c语言问题,请给出详细的解析,谢谢

作者&投稿:宾艳 (若有异议请与网页底部的电邮联系)
C语言中的问题不明白为什么 新人麻烦详细解释一下谢谢~

这里scanf指定逗号为输入的分隔符号。所以输入时数字和字符之间必须有逗号。
scanf不指定分隔符时,默认以空白字符(空格、回车、制表符)为分隔符。
PS:如果写%d%c不指定分隔符号。由于第二个变量是字符型,输入时中间不要加空格符,否则会将空白符号做为字符接收。

#include
#include
void move(char *str, int n)
{
char temp;
int i;
temp=str[n-1];
for(i=n-1; i>0;i--)
str[i]=str[i-1];
str[0]=temp;
}
int main()
{
char s[50];
int n, i, z;
scanf("%d %s", &n, s);
z = strlen(s);
//for(i=1; i<=n; i++)
move(s,z);
printf("%s
",s);
return 0;
}
楼主的意思 是移动字符串么?
注意scanf(“ ”); 引号中的书写形式,不能有“,”

main()
{
char a[5][10]={"one","two","three","four","five"};
int i,j;
char t;
for(i=0;i<4;i++) //当i = 0;j = 1时 a[0][0]为o, a[1][0]为t,
for(j=i+1;j<5;j++)
if(a[i][0]>a[j][0]) //单词首字母排序 小的向前移动
{
t=a[i][0];
a[i][0]=a[j][0];
a[j][0]=t;
}
puts(a[1]);
}
第一次j交换结果:
{"fne","two","three","oour","five"};
第二次交换结果:
{"fne","fwo","three","tour","oive"};
第三次交换结果:
{"fne","fwo","ohree","tour","tive"};
第四次交换结果:
{"fne","fwo","ohree","tour","tive"};

结果a[1] 为fwo


C语言问题:请选出以下程序的输出结果
所以for函数中的对参数x的打印始终保持着原来x的值,因此程序打印出来的结果:0 0 0 0题中知识点归纳:1、c语言指针使用的过程中,除非改变指针的指向或直接改变指针所指向的内容,否则指针指向内容是不会变化的。2、c语言中,如果需要回传参数,请使用return()函数。3、c语言中,static 关键字可以...

关于C语言的两道习题,请写出具体的解题步骤。
3&5:011&101 ( 按位与运算 对应相同为1则为1) 等于001 1 4|5:100|101 (按位或运算 对应有一个1则为1) 等于101 5 2^7:010^111(按位异或运算 相异为1) 等于101 5 ~3: (按位取反) 100 4 所以1-5+5+4=5 (2)2>>3 ( 右移3个单位 10 ...

两道高中英语选择题,请给出详细解释好吗?每个选项都要!
然后,be supposed to do something,suppose后面不能直接接宾语,必须要加上不定式,所以D排除 2.现在完成时需要相应的时态相配合,也就是说,语境中必须给出明确的时间限制才能使用现在完成时,不然就要用其他限制较松的时态,比如一般过去时。而且,你选的C的后半句没有表达出虚拟语气来,这是个致命...

c语言 复合赋值运算符的问题,请指教!
第一步:a=a\/(a-6),a的值传递给第二步进行下一步计算 第二步:a=a*a,a的值传递给第三步进行下一步计算 第三步:a=a+a,a的最终结果在这里 记住两句话:1、=赋值号,自右向左进行;2、a+=1相当于a=a+1。这个a\/=a-6先把a-6看成一个数,a\/=1不就是a=a\/1嘛;...

C语言的题目,求助!!!
include <stdio.h> int main(int argc, char *argv[]){ unsigned char *p1;unsigned long *p2;p1=(unsigned char*)0x801000;p2=(unsigned long*)0x810000;printf("p1=%x\\tp2=%x\\n",p1,p2);printf("p1+5=%x\\tp2+5=%x\\n",p1+5,p2+5);return 0;} 解释:unsigned char *p1;所以p1...

c语言绘制余弦曲线,请给出详细的注释
呵呵,原理是这样的,这是一个用*来描绘余弦曲线的程序,而我们知道printf在输出的时候如果不指定位置,他是默认从左到右输出,当加了\\n控制符时,他会换行下一行仍是从左到右输出,而模拟余弦曲线时为了让*在该出现的位置出现我们必须控制printf函数输出*的位置那么什么也不出也不行,只能用printf输出...

c语言问题在线解答(c语言问题在线解答老师)
计算机C语言问题,请解答一下,谢谢~ 1. 答案为 1 因为s=6 所以s%2+(s+1)%2 = 6%2+7%2 = 0+1 =1,%是求余运算 2. 变量c(请注意你问题里面的大小写,因为C语言对下小写敏感)包含的个数为1. 你所指的个数应该是指字符的个数,'\\010'是八进制的表示方式。 3. 有很多答案,你要的答案应该是递...

关于C语言的问题
请你把程序写正确.首先在外部定义LEN为4,static为静态内部变量,定义字符数组n[2][5];在这里要了解字符串的存储方式,例如上面的"8980",它是这样存储的8 9 8 0 \\0,不可忽视后面那个\\0,这是字符与字符串的不同之处,所以这里定义n[2][5],而不是n[2][4].至于下面的c=n[0][j]+n[1][...

两个简单C语言问题
2 int a=-1;那么a在内存中的存储为1111111111111111,注意%u表示以无符号数打印出来,所以最高位不表示符号而表示数值,所以输出是65535,但是这只是将a用无符号数形式输出并不影响实际a的数值。3 65535=16*16*16*16-1,上面说了int a=-1;printf("%x",a); 打印出的是用16进制表示的a(ffff)...

我的语言表达能力太差了,怎么办??
沟通中应注意的问题 许多人没有办法表达他的思想,并不是他不愿意表达,而是词不达意。如果能减少沟通...这个训练最好能有指导,特别是在朗诵技巧上给些指导。如果没有这个条件,也可以找人帮助,请人听自己背诵...复述一定的人物语言或描写语言;第三次复述时,就应基本准确地复述出人物的语言和基本的描写语言,逐次...

吴堡县13545866533: 【C语言求助】求详细解释~谢谢~已知大写字母A的ASCII码为65,a的ASCII码为97,下列不能把c中的大写字母转换成小写字母的是:A.c=(c - 'A')%26+'a' B .... -
丙毓德宝:[答案] 这个题太简单 你自己定义一个c是大写字母,然后计算这些表达式中c=后面的值就能得出来 该题选CD 而且CD两项错得非常明显,C项其实就是c=c-32,是小写字母转大写字母才对,D项就更不用说了,任何一个数%26的值不可能大于25,再减去97...

吴堡县13545866533: c语言问题 求详细解答谢谢 -
丙毓德宝: 当调用函数时,u=27,v=18 while(v)--->v=18,为真,执行循环 {w=U%v; --->w=27%18=9;u=v;----->此时,u和v的值并没有改变,所以,u=v=18;v=w;--->v=w=9;} 然后再进行循环,依此类推~

吴堡县13545866533: c语言问题 请详细解答 谢谢啦 -
丙毓德宝: #include int f(int x); void main() { int w=2,k; for(k=0;k { w=f(w);//调用函数第一次调用 w = f(2) = 2+1+4 = 7,第2次 w = f(2) = 2 + 1 + 5 = 8, 第3次 w = f(2) = 2 +1 + 6 = 9 printf("%d\n",w); } } int f(int x) { int y=0;//局部变量,每次都销毁,即每次都...

吴堡县13545866533: C语言问题,求详细分析,谢谢啦 -
丙毓德宝: 将指针f修改成了数组,不然在我机子上通不过无法运行,在字符串常量上修改是非常不好的行为.#include“stdio.h '' main() {char f[]="%11.2s",*a; // f是格式控制串 int i,j; a="******"; // a是一串星号 printf("\n"); // 先打一个空行 for(i=0;i<6;...

吴堡县13545866533: C语言问题 求详细解释 -
丙毓德宝: 选C;++a是先加1再传入if语句;b--是先传入if语句再减一;因此if语句中的a是0,b是1,会走到else分支去.最后结果是C.

吴堡县13545866533: c语言题目 求详解 -
丙毓德宝: #include void main( ) {FILE *fp; int i,a[4]={1,2,3,4},b; fp=fopen("data.dat","wb"); for(i=0;i//分别将a[0],a[1],a[2],a[3]输入到fp所指向位置中,又由于数组为int型,所以每个数据也要sizeof(int)共2个字节.//写入完结束后,共向该data文件写入了8字...

吴堡县13545866533: C语言题目(请详细解释一下) -
丙毓德宝: 在itoc函数的前一半循环中,把n的每一个数位分解为0~9之间的数,保存到b数组中. b[j]+48就是把一个0~9之间的数,变成一个'0'~'9'之间的ASCII码,再以%c的形式输出该字符.

吴堡县13545866533: 请回答菜鸟一些C语言问题.请详细解释 -
丙毓德宝: 请回答菜鸟一些C语言问题.请详细解释 悬赏分:0 - 离问题结束还有 14 天 23 小时 下列程序段运行后,x的值是【 】 a=1;b=2;x=0; if(!(--a))x--;//如果--a值再取非的值为真,那么x-- if(!b)x=7;//如果b的值大于0,那么!b等0;如果b等于0,那么b的值不等于0(可以是任意数,不等于的数(与你定义的类型有关)) else ++x;//++x 等于 x = x+1 A.0 B.3 C.6 D.7 其中(--a)是a = a -1

吴堡县13545866533: 求解一个非常简单的C语言问题,求正解,谢谢!!! -
丙毓德宝: C语言中单引号包含的字母是char类型 char可以隐式转换成int,反之也可以 putchar('a'+i); 'a'是字符变量,小写字母a的ASCII码是97,'a'+i就相当于97+i, 如果i=7的话,那么'a'+i就等于104 那么putchar('a'+i);就是输出ASCII码为104的字符,既'h' 以此类推,结果就是输出hijklmn 所以一楼的是答案,不是好玩..

吴堡县13545866533: 求解答,c语言,希望详细点,谢谢! -
丙毓德宝: 一共有两个判断语句.第一个判断if(!a),a=0,在c语言里面不为0则为true,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网