用C语言编程 1. 写一个函数,函数接受一个整型参数N,则返回一个包含N个字符的字符串

如题所述

char * myfunc(int n)
{
char *a=(char *)malloc(sizeof(char)*(n+1));
int i=0;
for (i=0;i<n;i++)
a[i]='a';
a[n]='\0';
return a;
}
main()
{
int n;
scanf("%d",&n);
char *a;
a=myfunc(n);
printf("%s\n",a);
}追问

运行有错误啊!malloc未定义,malloc是什么意思啊?

追答

在开头加入这两行:
#include
#include
试一下。
malloc就是进行动态内存分配的。
具体用法见:http://baike.baidu.com/view/736228.html?wtp=tt#sub1213621

追问

malloc我们没学啊! 要用C语言啊!

追答

malloc就是c语言中的函数啊,很基础的。要不就申请固定的空间:

#include
#include
char * myfunc(int n)
{
char a[1000];
int i=0;
for (i=0;i<n;i++)
a[i]='a';
a[n]='\0';
return a;
}
main()
{
int n;
scanf("%d",&n);
char *a;
a=myfunc(n);
printf("%s\n",a);
}
试一下.

追问

这个题目要求输入1,结果为A,输入2,结果为AB,输入3,结果为ABC ......

追答

#include
#include
char * myfunc(int n)
{
char a[1000];
int i=0;
for (i=0;i26时,求余,循环输出。
a[n]='\0';
return a;
}
main()
{
int n;
scanf("%d",&n);
char *a;
a=myfunc(n);
printf("%s\n",a);
}

温馨提示:答案为网友推荐,仅供参考
相似回答