rjps.net
当前位置:首页 >> #inCluDE <stDio.h> voiD mAin(voiD) { ChAr s[... >>

#inCluDE <stDio.h> voiD mAin(voiD) { ChAr s[...

没有右侧大括号“}”.

看这段程序 应该是 遍历文本数组C 最后的结果显示happy!#include void main () { char c[]={'H','a','p','p','y','!'}; int i=0; for(i;i { printf("%c",c[i]); } } 试试这段程序 最好手打不要复制

因为*p++是先算*p的值,然后在把指针+1,所以printf中*p的值都是1,指针已经+3了 如果把printf分开为 printf(“%c”,*p++); printf(“%c”,*p++); printf(“%c”,*p++); 那样结果就为123了.

你在程序里有判断if(*c>='a'&&*c你主函数输出的是s[5],也就是你输入的第五个字符,你输入的是空格,对应的ascii码值就是32.而你在子函数里输出的时候,用的是c[5],此时while循环已经执行完,*c为0,但是c[5]是c后面第五个地址中的数据,此数据不是你处理过的,是内存中原来的数,应该是个不确定的值.18只是个巧合,你换个时间,或是换台机器运行,也有可能是其它值.另外,你的程序还有一个问题,就是s[13],你应该只输入12个字符,因为字符串结尾还要加一个'\0',如果你输入13个字符,会溢出的.程序小没有问题,程序大的时候,会出问题的.是否可以解决您的问题?

#include"stdio.h"main(){char c[7]; int i,a[5]={0};/*数组元素a[0]~a[4]相当于变量k~m.此处初始化赋值为零,上面的错误没有赋值*/ printf("input:\n"); gets(c);for(i=0;i<7;i++){if(c[i]>='A' && c[i]<='Z') a[0]++;else if (c[i]>='a' && c[i]<='z') a[1]++;else

忘记&amp;,而且上面应该是char类型,不是char*应该是scanf("%s",&amp;str);这个函数要求输入的地址类型的数据

#include void main( ) { char a[10]={'1','2','3','4','5','6','7','8','9',0},*p; int i; i=8; p=a+i; //p指向a[8] 即:'9' printf ("%s\n",p-3); //p前移3指向6,输出字符串:6789 } 你的答案是对的!!

1. D 二、 程序填空(26分)1、求1!+2!+3!++10! #include <stdio.h> void main(void) { float s = 0, t = 1; int n; for (n=1; n<=10 ; n++) { t*=n ; //该这句 S+= t ; } printf(“1!+2!+3!++10!=%f”, s); }2、以下程序是用来统计从键盘输入的一个

你的数据类型定义的不对, 里面有除法,结果一定是个浮点数,你却都定义int类型的变量m,n可以是int的,把a,b,c,d都改成float的,否则即使有结果,误差也大的吓死人.改成float , 那句printf就不用改了,因为c是float, 格式符也是float,正好一致了

这好像是c语言吧!不是高中数学的范畴.

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.rjps.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com