资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

c语言输入函数不执行 c语言函数不运行

c语言中的函数调用问题(不运行啊)

只要没启动看门狗,正常编程就行了,然后就在被调用函数里等待按键,但是不能用死循环,那就出不来了,可以用while语句,判断按键是否按下,按下带返回值返回,没有按键继续检测按键。

创新互联技术团队10余年来致力于为客户提供成都网站制作、成都做网站、外贸营销网站建设品牌网站制作成都营销网站建设、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了成百上千网站,包括各类中小企业、企事单位、高校等机构单位。

c语言编写一个函数,没有报错,但是无法运行,请帮忙指出原因所在,谢谢

在main函数中,

fun(a, b, 4);

第一个参数a是字符串常量,其内容是不能修改的

而在函数fun函数中,

while(a[n] != '\0')

{

for(i = n; a[i] != '\0'; i++)

a[i+1] = a[i];    //该语句修改了字符串a的内容

}

修改了第一个字符串指针指向的内容,因此运行时会出错

另外fun函数这么写可以实现你想要的功能

void fun(const char *a, char *b, int n){

int i, j;

for(i = 0, j = 0; a[i]; i++){

if(i == n) continue;

b[j++] = a[i];

}

b[j] = 0;

}

我的c语言程序为什么会执行不了?

这段C语言代码有三个错误:

一、switch单词拼写错误少了c;

二、if(k = 'V')判断是双等于号==;

三、main函数最好没有返回值,这不是大错。

C语言中输入函数无法执行

因为前面输入数字时,最后总要按下回车键,这就输入了一个回车符,而后面的getchar()会读取这个字符,而不等待从键盘输入(因为缓冲区不为空),修改如下:

#include stdio.h

#include stdlib.h

int main()

{

int data[7000]={1,1,0},num,digit=1,i,j,k;

FILE *fp;

char fname[50];

printf("\t阶乘计算器\n\t请输入:");

scanf("%d",num);

for(i=1;i=num;i++)

{

if(i%20==0)

{

printf("\n\t当前计算到%10d 的阶乘!!!........\n",i);

}

for(j=1;j=digit;j++)

{

data[j]*=i;

}

for(j=1;j=digit;j++)

{

if(data[j]9)

{

for(k=1;k=digit;k++)

{

if(data[digit]9)

{

digit++;

}

data[k+1]+=data[k]/10;

data[k]%=10;

}

}

}

}

printf("\n\n\n\t%d!=\n",num);

for(j=digit;j0;j--)

{

printf("%d",data[j]);

}

printf("\n\n\t%d!共有%d位......\n\n\n",num,digit);

printf("是否保存文件?(y\\n)");

fflush(stdin);/************注意这里,刷新缓冲区,避免前面输入数字时遗留的回车符影响这里的读取******/

if(tolower(getchar())=='y')

{

printf("请输入文件名:");

gets(fname);

if((fp=fopen(fname,"w"))==NULL)

{

printf("打开文件%s失败",fname);

exit(0);

}

fprintf(fp,"\t%d!=\n",num);

for(j=digit;j0;j--)

{

fprintf(fp,"%d",data[j]);

}

fprintf(fp,"\n%d!有%d位......\n\n\n",num,digit);

fclose(fp);

}

return 0;

}


分享题目:c语言输入函数不执行 c语言函数不运行
文章位置:http://cdkjz.cn/article/dogojjj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220