Mxode/CSDN-C_Language-2013_2023 huggingface dataset:
user-0 提问: c语言练习题，较基础，是否有人愿意帮忙看一看？感谢。

回复:
user: user-1
content: #include <stdio.h> #include <string.h>  int main() {     char buf[128];     int start = 0, cnt = 0;      while (fgets(buf, 128, stdin)) {         if (strncmp(buf, "#", 1) == 0) {             start++;             if (start >= 2) {                 printf("%d\n", cnt);                 cnt = 0;                 start = 0;             }         } else {             if (start <= 0)                 continue;             if (strlen(buf) > 1)    //至少一个'\n'，因此除了'\n'还需要其他字符才符合                 cnt++;         }     }     /*     while (getchar() != EOF)        //读取#     {         getchar();                    //读取\n         int count;         char ch,pre=' ';         count = 0;         for (; (ch = getchar()) != '#';) {             if (ch == '\n' && pre != '\n')        //当前字符为\n且上一个字符不为\n                 count++;             pre = ch;                //上一个字符         }         getchar();                    //读取末尾的'\n'         printf("%d\n", count);     }     */     return 0; }  供参考～ 试一下这个能不能通过；

user: user-2
content: 会不会在一个空行中有空格。

user: user-0
content: 引用 1 楼 user-3的回复: #include<stdio.h> int main() { 	while (getchar() != EOF)		//读取# 	{ 		getchar();					//读取\n 		int count; 		char ch,pre=' '; 		count = 0; 		for (; (ch = getchar()) != '#';) { 			if (ch == '\n' && pre != '\n')		//当前字符为\n且上一个字符不为\n 				count++; 			pre = ch;				//上一个字符 		} 		getchar();					//读取末尾的'\n' 		printf("%d\n", count); 	} 	return 0; }  您好！我试了一下您的代码，还是答案错误，还能麻烦您看看哪儿有问题吗？

user: user-0
content: 引用 3 楼 自信男孩的回复:#include <stdio.h> #include <string.h>  int main() {     char buf[128];     int start = 0, cnt = 0;      while (fgets(buf, 128, stdin)) {         if (strncmp(buf, "#", 1) == 0) {             start++;             if (start >= 2) {                 printf("%d\n", cnt);                 cnt = 0;                 start = 0;             }         } else {             if (start <= 0)                 continue;             if (strlen(buf) > 1)    //至少一个'\n'，因此除了'\n'还需要其他字符才符合                 cnt++;         }     }     /*     while (getchar() != EOF)        //读取#     {         getchar();                    //读取\n         int count;         char ch,pre=' ';         count = 0;         for (; (ch = getchar()) != '#';) {             if (ch == '\n' && pre != '\n')        //当前字符为\n且上一个字符不为\n                 count++;             pre = ch;                //上一个字符         }         getchar();                    //读取末尾的'\n'         printf("%d\n", count);     }     */     return 0; }  供参考～ 试一下这个能不能通过； 您好，我试了一下，结果还是显示答案错误，不过还是谢谢您！

user: user-3
content: #include<stdio.h> int main() { 	while (getchar() != EOF)		//读取# 	{ 		getchar();					//读取\n 		int count; 		char ch,pre=' '; 		count = 0; 		for (; (ch = getchar()) != '#';) { 			if (ch == '\n' && pre != '\n')		//当前字符为\n且上一个字符不为\n 				count++; 			pre = ch;				//上一个字符 		} 		getchar();					//读取末尾的'\n' 		printf("%d\n", count); 	} 	return 0; }
user-0 提问: 各位我的这段程序问题出在哪儿？

回复:
user: user-0
content: 引用 1 楼 user-1的回复:发代码别发截图哦 代码发在2楼了。 还有我还没学到指针，改代码的话最好不要用指针的知识

user: user-0
content: 引用 1 楼 user-1的回复:发代码别发截图哦 报错是：非法的内存访问，数组越界，指针漂移

user: user-0
content: 好的   #include<stdio.h> int main(){       int i=0;int g,h,j,k,l,m;int x[10000];int z=0;int y=0,t=0;int count=1; 	 int a,b,c,d,e,f; 	    	  scanf("%d %d %d %d %d %d",&a,&b,&c,&d,&e,&f); 	  for(g=0;g<=a;g++) 		  for(h=0;h<=b;h++) 			  for(j=0;j<=c;j++) 				  for(k=0;k<=d;k++) 					  for(l=0;l<=e;l++) 						  for(m=0;m<=f;m++) 							 if((g+h+j+k+l+m)>=1) 											  				  	   							 { x[z]=g+2*h+3*j+5*k+10*l+20*m;z++; }         							 	      	for(i=0;i<z-2;i++) 		{    for(y=0;y<z-2-i;y++) 			{     if(x[y]>=x[y+1]){ t=x[y];x[y]=x[y+1];x[y+1]=t;}}}   	for(i=0;i<z-1;i++) 	{ if(x[i]-x[i+1]!=0)     count++;    } 	printf("%d",count);}

user: user-1
content: 发代码别发截图哦
user-0 提问: 【C语言】扑克牌程序设计，急，在线等

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html
user-0 提问: c语言指针

回复:
user: user-0
content: 引用 1 楼 Italink的回复:没有区别=.= 那就是选项有问题了

user: user-1
content: 没有区别=.=

user: user-0
content: 引用 6 楼 wowpH的回复:所以，问这道题的意义是什么。。。 我就想确定一下是我理解错了还是题出错了

user: user-2
content: 呃，应该是要和老师去互怼

user: user-3
content: 所以，问这道题的意义是什么。。。

user: user-3
content: 经过我的肉眼观察，一模一样（没区别）。

user: user-0
content: 引用 3 楼 自信男孩的回复:# include <stdio.h> # include <string.h> # define N 3 int main( )  {     char str[N][81], *sp;     int i;     for(i=0; i<N; i++)         gets(str[i]);     sp= str[0];//第一个空     for(i=1;i<N;i++)         if(strlen(sp) <  strlen(str[i])) {             sp= str[i];//第二个空             //printf("%o  %o",str[i],&str[i][0]);//测试用的         }     printf("sp %d, %s\n" ,strlen(sp),sp);      return(0); }  供参考～ 兄弟  你是没看明白我问得问题啊  我是问a和b有啥区别

user: user-4
content: # include <stdio.h> # include <string.h> # define N 3 int main( )  {     char str[N][81], *sp;     int i;     for(i=0; i<N; i++)         gets(str[i]);     sp= str[0];//第一个空     for(i=1;i<N;i++)         if(strlen(sp) <  strlen(str[i])) {             sp= str[i];//第二个空             //printf("%o  %o",str[i],&str[i][0]);//测试用的         }     printf("sp %d, %s\n" ,strlen(sp),sp);      return(0); }  供参考～
user-0 提问: 为什么我用while和do while得出来的结果不一样，求大神指教

回复:
user: user-1
content: do ... while会先执行循环体在判断，而while是相反的。  楼主的问题不是这个，而是代码写时的失误，while结尾多一个分号～

user: user-2
content: 因为你while(p!=NULL);后面多了个; while() { }

user: user-0
content: 引用 2 楼 自信男孩的回复:do ... while会先执行循环体在判断，而while是相反的。  楼主的问题不是这个，而是代码写时的失误，while结尾多一个分号～ 感谢，已经解决了，自己还是太马虎了

user: user-0
content: 引用 1 楼 user-2的回复:因为你while(p!=NULL);后面多了个; while() { } 感谢感谢，已经解决了，自己还是太马虎了
user-0 提问: 递归

回复:
user: user-1
content: 在hanoi函数的第一行加一句 printf("m=%d  a=%c b=%c c=%c\n", m, a, b, c); 把输入的所有参数都打印出来看看  然后看输出的结果啊，就知道怎么移动的了

user: user-0
content: 引用 1 楼 寻开心的回复:两个办法 第一个办法       自己拿几个纸杯，一个摞一个，人工模拟过程 第二个办法        多写几个printf函数，把每一步移动时候abc上面各自有几个输出出来就看到了  建议第一个方法， 起码先明白方法啊，有了方法才可以去编码；  倒过来从编码看反方，那个更累，就好比看别人的代码找错一样 刚学这个调用，看着看着就不知道调到哪了吧

user: user-0
content: 引用 1 楼 寻开心的回复:两个办法 第一个办法       自己拿几个纸杯，一个摞一个，人工模拟过程 第二个办法        多写几个printf函数，把每一步移动时候abc上面各自有几个输出出来就看到了  建议第一个方法， 起码先明白方法啊，有了方法才可以去编码；  倒过来从编码看反方，那个更累，就好比看别人的代码找错一样 我懂方法和思路，就是不懂这个程序的运行顺序

user: user-1
content: 两个办法 第一个办法       自己拿几个纸杯，一个摞一个，人工模拟过程 第二个办法        多写几个printf函数，把每一步移动时候abc上面各自有几个输出出来就看到了  建议第一个方法， 起码先明白方法啊，有了方法才可以去编码；  倒过来从编码看反方，那个更累，就好比看别人的代码找错一样
user-0 提问: 我们的一个C语言的作业

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 这个二维数组里面的元素保存的是每个节点上机器人可以行走的方向 解决这个问题，要做一个等大小的辅助的二维数组，类型是int类型，并把里面的数值都初始化为0.   从初始点开始，辅助数组对应数据设置为1， 也就是当前走了第一步 此后每前进一步判断一下新的位置的辅助数组是否为0， 是0表示没有来过，把辅助数组设置成当前所走的步数 如果能够走出去， 总步数自然就知道了。 如果循环，就是遇到了一个以前走过的老位置，其辅助数据值不为0. 循环到此结束

user: user-3
content: 首先给出你一个思路，矩阵是二维数组，然后读取每个二维数组，首先判断可不可以从首行，尾行，首列，尾列，四个角走通，首行只能下，首列只能右依次类推，不能走通就输出不能走通，可以的话记录每一步，这样的话就可以解决第一个问题了，第二个暂时还没想明白
user-0 提问: c语言

回复:
user: user-1
content: while(scanf("%lf",&n)!= EOF); 这一句似乎多了一个分号？

user: user-2
content: 你确定那个符号不是多出来本不应该存在的？？？

user: user-3
content: 擦 你说的是分号吧 表示表达式结束了  后面就是新的表达式
user-0 提问: C语言

回复:
user: user-1
content: int qiuzhishu(int m); int main() {     qiuzhishu(13);     int a, i,j;     for ( a=4; a<=2000; a=a+2)     {         if (4==a) {             printf("4 = 2 + 2\n");             continue;         };         for(i=3; i<=a/2; i=i+2 )         {             j = a - i;             if ( qiuzhishu(i) && qiuzhishu(j) ) {                 printf("%d = %d + %d\n", a, i, j);                 break;             };         };         if ( i>a/2) {             printf("\nError: %d\n", a);         }     };     return 0; }  int qiuzhishu(int m) {     int n,e;     if (3==m || 5==m || 7==m) return 1;     e = (int) sqrt(m);     for(n=2; n<=e; n++)         if(m%n==0) return 0;     return 1; }
user-0 提问: C语言练习题

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: #include <stdio.h> #include <stdlib.h> int PrimeNumber(int x) {     int i,k;     for(i=2;i<x;i++)     {         if(x%i==0)break;     }     if(i==x)k=1;     else k=0;     return k; } int main() {  int a,d,n,array,i,judge,j,pn;   while( scanf("%d %d %d",&a,&d,&n)!=EOF){    j=0;    for(i=0;j<n;i++)    {        array=a+i*d;        judge=PrimeNumber(array);        if(judge==1)        {             j++;             pn=array;        }    }     printf("%d",array);}     return 0; }
user-0 提问: 请问这样的题怎么做

回复:
user: user-1
content: 引用 3 楼 寻开心 的回复:int main() {     int m[5][5];     int i,j;     for ( i=0;i<5; i++)         m[i][0] = m[0][i] = i+1;     for ( i=1; i<5; i++) {         for ( j=1;j<5;j++)             m[i][j] = m[i-1][j] + m[i][j-1];     };     for ( int i=0; i<5; i++) {         for ( int j=0; j<5; j++)             printf("%3d ", m[i][j]);         printf("\n");     };     return 0; };算法没什么问题  不过代码中 } 后面都写 ; 这个奇怪的习惯 影响不好

user: user-2
content: int main() {     int m[5][5];     int i,j;     for ( i=0;i<5; i++)         m[i][0] = m[0][i] = i+1;     for ( i=1; i<5; i++) {         for ( j=1;j<5;j++)             m[i][j] = m[i-1][j] + m[i][j-1];     };     for ( int i=0; i<5; i++) {         for ( int j=0; j<5; j++)             printf("%3d ", m[i][j]);         printf("\n");     };     return 0; };

user: user-0
content: 引用 1 楼 寻开心的回复:规律就是： a[m][n] = a[m-1][n] + a[m][n-1] 初始第一行和第一列为1开始的，递增序列，后面都好写啊 你好，这个用c怎么写呢？求具体过程

user: user-2
content: 规律就是： a[m][n] = a[m-1][n] + a[m][n-1] 初始第一行和第一列为1开始的，递增序列，后面都好写啊
user-0 提问: 代码缺参数

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 2 楼 寻开心的回复:怀疑你的CString Onldtos(long doble)是不是另外一个类的方法啊？ 不是啊，是同一个类来的

user: user-0
content: 引用 1 楼 不闻窗外事的回复:你看看你有没有对这个函数的声明，是不是没有加参数 就是不知道如何去声明

user: user-2
content: 怀疑你的CString Onldtos(long doble)是不是另外一个类的方法啊？

user: user-3
content: 你看看你有没有对这个函数的声明，是不是没有加参数
user-0 提问: while循环问题

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 3 楼 自信男孩的回复:while判断x-2是否为0，若为0退出循环，否则其他值都是执行循环体～ 我明白了，谢谢你(*^ω^*)

user: user-2
content: 引用 1 楼 朱铭德 的回复:while(x-2)在这里等价于while(x>2) 然后就很显然了吧准确的说 应该是 等价于 while(x != 2)

user: user-3
content: while判断x-2是否为0，若为0退出循环，否则其他值都是执行循环体～

user: user-4
content: 因为当x=2时while返回值为假不进行循环

user: user-5
content: while(x-2)在这里等价于while(x>2) 然后就很显然了吧
user-0 提问: 小白，求助大佬，C语言二维数组

回复:
user: user-1
content: 越界了。score的第 1 维下标是 [0,0] 第 2 维下标是 [0,5] float score[1][6]; 可以改为 float score[6]; ------------------------------------------------------------------ 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 ------------------------------------------------------------------

user: user-0
content: #include<stdio.h> int main() { int a=0,b=0,c=0,d=0; char name[1][12]; float score[1][6]; char course1[20],course2[20],course3[20],course4[20],course5[20]; printf("请输入科目\n"); scanf("%s%s%s%s%s",course1,course2,course3,course4,course5); printf("学生姓名 %s %s %s %s %s 平均分.请输入学生姓名分数\n",course1,course2,course3,course4,course5); scanf("%s%f%f%f%f%f%f",&name[0][12],&score[0][1],&score[0][2],&score[0][3],&score[0][4],&score[0][5]); score[0][6]=(score[0][1]+score[0][2]+score[0][3]+score[0][4]+score[0][5])/5; printf("%f",score[0][6]); return 0; }为什么最后一个输出，输不出来，大佬们

user: user-0
content: 引用 7 楼 datoulaile123的回复:用小写的%s  好了，谢谢

user: user-0
content: 引用 7 楼 datoulaile123的回复:用小写的%s  我试试，谢谢，。。。

user: user-2
content: 用小写的%s

user: user-0
content: 写了一点 #include<stdio.h> int main() { char course1[20],course2[20],course3[20],course4[20],course5[20]; printf("请输入科目\n"); scanf"(%S%S%S%S%S",course1,course2,course3,course4,course5); printf("学生姓名%s%s%s%s%s平均分",course1,course2,course3,course4,course5); return 0; }但是输出来汉字乱码，不知道为什么

user: user-0
content: 引用 4 楼 这是一个正经昵称的回复:不会直接做出来的时候学会把问题简化，从做输入一个学生，一个科目开始，然后两个学生，一个科目，然后一个学生两个科目，然后两个学生两个科目，到这里你会发现，哦~原来如此。 嗯嗯好的，我试试，谢谢

user: user-3
content: 不会直接做出来的时候学会把问题简化，从做输入一个学生，一个科目开始，然后两个学生，一个科目，然后一个学生两个科目，然后两个学生两个科目，到这里你会发现，哦~原来如此。

user: user-0
content: 引用 2 楼 datoulaile123的回复:先自己写写看呢，写不下去了贴个代码再来问？ 嗯嗯，我试试，写写看

user: user-2
content: 先自己写写看呢，写不下去了贴个代码再来问？

user: user-0
content: 在线等大佬 ，谢谢大佬！
user-0 提问: 怎么也找不到错误，系统提示答案错误，求帮忙

回复:
user: user-1
content: #include<stdio.h>  int main() {     int n,x[101],i,min,t, idx;     while(scanf("%d", &n) && 0<n&&n<100)     {         for(i=0;i<n;i++)             scanf("%d", &x[i]);         min = x[0];         idx = 0;         for(i=1;i<n;i++)         {             if(x[i]<min)             {                 min=x[i];                 idx = i;             }         }         t = x[0];         x[0] = x[idx];         x[idx] = t;          for(i = 0; i < n; i++)             printf("%d ", x[i]);         putchar(10);     }     return 0; } 供参考～

user: user-2
content: 实测无错误啊

user: user-2
content: #include <stdio.h>  int main(int argc, char *argv[]) {     int n;     int i, j;     int x;     int a[100];      while (scanf("%d", &n) > 0 && n > 0 && n <= 100) {         for (i = 0; i < n; i++) {             scanf("%d", &a[i]);         }          j = 0;         for (i = 1; i < n; i++) {             if (a[i] < a[j])                  j = i;         }         x = a[0];         a[0] = a[j];         a[j] = x;          for (i = 0; i < n; i++) {             printf("%d ", a[i]);         }         printf("\n");     }      return 0; }

user: user-3
content: ~scanf("%d",&n),0<n&&n<100，能不能别用这么骚的操作，不怕死是吗
user-0 提问: 利用函数计算字符串的数字个数

回复:
user: user-1
content: #include<stdio.h> int f(char c[]) { int sum=0,i; for(i=0;c[i]!='\0';i++) { if(c[i]>='0'&&c[i]<='9') sum++; } return(sum); } int main() { int n,k; char str[100];//={0};，没必要  gets(str); /*scanf("%d",&k); for(int i=1;i<=k;i++) {啥意思 */ //n=f(str); printf("数字个数：%d\n",f(str)); /*printf("%d\n",&n);&这是啥意义思  }*/ return 0; }

user: user-0
content: 引用 2 楼 自信男孩的回复:#include<stdio.h>  //int f(char c[100]={0}) int f(char c[100]) {     int sum=0,i;     for(i=0;c[i]!='\0';i++)     {         if(c[i]>='0'&&c[i]<='9')             sum++;     } 供参考～      return(sum); } int main() {     int n,k;     char str[100]={0};     //gets(str);     scanf("%d",&k);     getchar();     for(int i=1;i<=k;i++)     {         gets(str);         n=f(str);         //printf("%d\n",&n);         printf("%d\n", n);     }     return 0; } 谢谢你，可是改的前两处的原因是什么呢？？

user: user-0
content: 引用 1 楼 不闻窗外事的回复:printf("%d\n",&n);你这打印的是啥玩意，你打印地址干啥 天呐！我绝对是傻了

user: user-2
content: #include<stdio.h>  //int f(char c[100]={0}) int f(char c[100]) {     int sum=0,i;     for(i=0;c[i]!='\0';i++)     {         if(c[i]>='0'&&c[i]<='9')             sum++;     } 供参考～      return(sum); } int main() {     int n,k;     char str[100]={0};     //gets(str);     scanf("%d",&k);     getchar();     for(int i=1;i<=k;i++)     {         gets(str);         n=f(str);         //printf("%d\n",&n);         printf("%d\n", n);     }     return 0; }

user: user-3
content: printf("%d\n",&n);你这打印的是啥玩意，你打印地址干啥
user-0 提问: 求助大佬，自定义函数

回复:
user: user-1
content: maxHeight = getMax(height,N);的时候N的值就会赋给length  修改一下你的最大值和最小值代码。 int  getMin(int nums[],int length) {     int min = nums[0];      for(i = 1;i < length;i++) {          if(min > nums[i]) { min = nums[i]; }     }    return min; }

user: user-0
content: 引用 2 楼 自信男孩 的回复：length是形参，谁调用谁传递实参给length。  通过main函数里，传递给length是N，M谢谢🙏

user: user-0
content: 引用 2 楼 自信男孩 的回复：length是形参，谁调用谁传递实参给length。  通过main函数里，传递给length是N，M哦哦，谢谢大佬

user: user-2
content: length是形参，谁调用谁传递实参给length。  通过main函数里，传递给length是N，M

user: user-3
content: length是入参，在函数调用的时候赋值
user-0 提问: 萌新问问c语言文件操作

回复:
user: user-1
content: 引用 楼主 mdlx 的回复:如何将写好的复制文件的c语言代码实现，通过cmd向main函数传入参数(ps:这给分数是怎么给分) 或者找到exe文件的位置，在地址栏输入cmd回车也行。 ------------------------------------------------------------------ 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 4、红色的是链接，鼠标左键可点击哦。（这句话写给有超高度近视的人看的） CSDN论坛新手指南 ------------------------------------------------------------------

user: user-0
content: 引用 5 楼 user-3的回复:[quote=引用 4 楼 mdlx 的回复:] [quote=引用 3 楼 weixin_40290083的回复:]你在定义main函数是要么写成main() 要么写成main(int argc, char **argv)第一个参数就是cmd命令参数的个数，包括应用程序本身，argv就是参数，不过是字符串数组的形式，在程序中就可以使用argc,argv两个变量如: for(int i =0;i<argc;i++){     printf("%s",*argv[i]); } 假定你编译好的应用程序名为a0.exe，那么  a0 a1  a2   a3，应用程序就会获得这些参数。至于是如何提交到应用程序的，这个是操作系统干的事情，原理没有深究过。 我在编译器写了c文件，然后生成了可执行文件后，在cmd窗口输入可执行文件名却显示“不是内部或外部命令，也不是可执程序或批处理文件”，这是怎么回事？[/quote]cd 到可执行文件的目录 或者 可执行文件用完整路径[/quote] 谢谢，能弄好了

user: user-0
content: 引用 6 楼 weixin_40290083的回复:看你的错误提示，使用的应该是windows系统，打要把你的当前盘和当前目录定位到你的应用程序所在的目录。 先输入 X：回车（X为程序所在的盘） cd AA/BB/CC  回车 (AA BB CC为文件夹（目录）的名称，最终要定位到你的程序所在的文件夹（目录）) 谢谢，能弄好了，

user: user-2
content: 看你的错误提示，使用的应该是windows系统，打要把你的当前盘和当前目录定位到你的应用程序所在的目录。 先输入 X：回车（X为程序所在的盘） cd AA/BB/CC  回车 (AA BB CC为文件夹（目录）的名称，最终要定位到你的程序所在的文件夹（目录）)

user: user-3
content: 引用 4 楼 mdlx 的回复:[quote=引用 3 楼 weixin_40290083的回复:]你在定义main函数是要么写成main() 要么写成main(int argc, char **argv)第一个参数就是cmd命令参数的个数，包括应用程序本身，argv就是参数，不过是字符串数组的形式，在程序中就可以使用argc,argv两个变量如: for(int i =0;i<argc;i++){     printf("%s",*argv[i]); } 假定你编译好的应用程序名为a0.exe，那么  a0 a1  a2   a3，应用程序就会获得这些参数。至于是如何提交到应用程序的，这个是操作系统干的事情，原理没有深究过。 我在编译器写了c文件，然后生成了可执行文件后，在cmd窗口输入可执行文件名却显示“不是内部或外部命令，也不是可执程序或批处理文件”，这是怎么回事？[/quote]cd 到可执行文件的目录 或者 可执行文件用完整路径

user: user-0
content: 引用 3 楼 weixin_40290083的回复:你在定义main函数是要么写成main() 要么写成main(int argc, char **argv)第一个参数就是cmd命令参数的个数，包括应用程序本身，argv就是参数，不过是字符串数组的形式，在程序中就可以使用argc,argv两个变量如: for(int i =0;i<argc;i++){     printf("%s",*argv[i]); } 假定你编译好的应用程序名为a0.exe，那么  a0 a1  a2   a3，应用程序就会获得这些参数。至于是如何提交到应用程序的，这个是操作系统干的事情，原理没有深究过。 我在编译器写了c文件，然后生成了可执行文件后，在cmd窗口输入可执行文件名却显示“不是内部或外部命令，也不是可执程序或批处理文件”，这是怎么回事？

user: user-2
content: 你在定义main函数是要么写成main() 要么写成main(int argc, char **argv)第一个参数就是cmd命令参数的个数，包括应用程序本身，argv就是参数，不过是字符串数组的形式，在程序中就可以使用argc,argv两个变量如: for(int i =0;i<argc;i++){     printf("%s",*argv[i]); } 假定你编译好的应用程序名为a0.exe，那么  a0 a1  a2   a3，应用程序就会获得这些参数。至于是如何提交到应用程序的，这个是操作系统干的事情，原理没有深究过。

user: user-0
content: 引用 1 楼 weixin_40290083的回复:main函数是可以带参数的，而且是两个参数，第一个参数为int型，是cmd命令中单词的个数，第二个参数为char *，是每个参数的字符串数组。 但是在cmd中怎么将参数传入用编译器写好的c文件中

user: user-2
content: main函数是可以带参数的，而且是两个参数，第一个参数为int型，是cmd命令中单词的个数，第二个参数为char *，是每个参数的字符串数组。
user-0 提问: 试定义有理数的逻辑结构并使用语言定义有理数的虚拟存储结构

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html
user-0 提问: 大一学生求解一道c语言题

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 第二个应该是要求几个数据一行，因此根据要求如果是5个数据一行，那么i % 5

user: user-3
content: 题目要求都没有啊  第二个空应该是限制列数  没说几列啊

user: user-4
content: 题目要求都没有啊  第二个空应该是限制列数  没说几列啊
user-0 提问: 冒泡排序代码

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 你的问题是什么呢，代码功能上没有什么问题吧 你可以把a[L]初始化下a[L] = {0}，然后数组前面空着没太理解(为了中间变量a[0]？)，没必要啊
user-0 提问: #include
int main ()
{
    int max4 (int a,int b,int c,int d);
    int

回复:
user: user-1
content: 这不叫函数嵌套，而是函数声明。max4函数在调用之前声明。C语言是不支持函数嵌套定义的。

user: user-2
content: C 语言没有函数嵌套
user-0 提问: 同样一个代码，为什么不同电脑运行结果不一样

回复:
user: user-1
content: fflush(stdin);  fflush对于stdin是未定义的行为，即不一定能将stdin刷新。 所以，建议楼主加一些打印看一下每次的输入是否进入到你想要的变量里， 因为有%c的输入，会导致'\n'匹配%c

user: user-2
content: 给出测试数据啊。   输入的数据是什么， 预期的正确结果会是什么？

user: user-3
content: 建议debug模式调试一下哦

user: user-0
content: 引用 1 楼 user-4的回复:逗号是英文逗号吗 一样的，我直接复制过去的

user: user-4
content: 逗号是英文逗号吗
user-0 提问: 帮我一下，谢谢

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 我觉得挺清楚了啊 输入，输出，if判断这三个基本语法就够了

user: user-0
content: 引用 1 楼 qq_45798109的回复:如果不要求高精度的话，直接输入ab输出a+b 可以跟我提供一下具体过程吗，我自己编了好多次，系统一直把我的认为错

user: user-3
content: 可以利用scanf的返回值来判断是否输入正确

user: user-2
content: 如果不要求高精度的话，直接输入ab输出a+b

user: user-4
content: 引用 3 楼 -?????` 的回复:可以跟我提供一下具体过程吗，我自己编了好多次，系统一直把我的认为错 贴代码 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 -------------------------------------------------------
user-0 提问: 要求用c语言

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 从给定数开始循环，找到就break

user: user-3
content: 根据给定的整数，然后做判断，若该整数是奇数，则每次加2，若是偶数，则加1，然后在每次加2， 最后判断是否为质数，若是则为最近的质数

user: user-4
content: 引用 5 楼 寻开心 的回复:属示意性伪代码   int m=sqrt(n)  n 可能大于 m*m, 此时n和m*m之间有素数了，不能保证到（m+1）*（m+1）之间一定有素数 例子：n=119时候；  m=10, 那么119到121之间是没有素数的，必须放大一个到12^2 = 144区间去找  sqrt(n-1) 是加的一个反向的保护 n=100的时候， 这个时候m=10， 而用sqrt（n-1) 的话，m就是9； 此时就可以去检查  100到121区间而不是100到144区间这个范围没意义呀   循环退出条件是循环变量是素数  而循环变量是素数 按照你给的规则 这个素数一定小于（n+1）^2 （n+1）^2 永远不可达 没必要操心 如果能优化下界 就比较有价值  优化上界 大可不必

user: user-5
content: 属示意性伪代码   int m=sqrt(n)  n 可能大于 m*m, 此时n和m*m之间有素数了，不能保证到（m+1）*（m+1）之间一定有素数 例子：n=119时候；  m=10, 那么119到121之间是没有素数的，必须放大一个到12^2 = 144区间去找  sqrt(n-1) 是加的一个反向的保护 n=100的时候， 这个时候m=10， 而用sqrt（n-1) 的话，m就是9； 此时就可以去检查  100到121区间而不是100到144区间

user: user-4
content: 引用 2 楼 寻开心 的回复:如果非要定范围，那么根据素数定理之一，对于正数n， 在 n^2 到 （n+1）^2 之间至少会有一个素数  对于本题，非要弄范围的话，如果给定的正整数是n， 从 n+1到(sqrt(n-1)+2)^2做循环就行了(sqrt(n-1)+2)^2 这个操作看不明白? 怎么理解的

user: user-6
content: int prime_one(int num) { 	if (num < 2) { 		return 0;// 不是质数 	} 	for (int i = 2; i < num; ++i) { 		if (0 == (num % i)) { 			return 0; 		} 	} 	return 1;// 质数 }  ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 -------------------------------------------------------

user: user-5
content: 如果非要定范围，那么根据素数定理之一，对于正数n， 在 n^2 到 （n+1）^2 之间至少会有一个素数  对于本题，非要弄范围的话，如果给定的正整数是n， 从 n+1到(sqrt(n-1)+2)^2做循环就行了
user-0 提问: 数据结构的错误代码

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 1 楼 user-2的回复:#ifndef _SQLIST_H #define _SQLIST_H  把中间的空格给漏了哦 哈哈哈，懂了，感谢

user: user-0
content: 两个#声明之间我空了一行的呀

user: user-2
content: #ifndef _SQLIST_H #define _SQLIST_H  把中间的空格给漏了哦
user-0 提问: 求解这三题，初学者瑟瑟发抖

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 1 楼 Italink的回复:如果你不动手写一下，跳过这个从无到有的过程，可能永远都是初学者 写了，后面好多都说错。不会改

user: user-2
content: 如果你不动手写一下，跳过这个从无到有的过程，可能永远都是初学者

user: user-0
content: 引用 3 楼 user-4的回复:[quote=引用 2 楼 Agony_yd 的回复:] [quote=引用 1 楼 Italink的回复:]如果你不动手写一下，跳过这个从无到有的过程，可能永远都是初学者 写了，后面好多都说错。不会改[/quote] 那就尽量自己先改下，实在改不了把有错的代码发上来[/quote] 好的，知道了

user: user-3
content: 我有点好奇18岁的6480天是怎么来的。 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 -------------------------------------------------------

user: user-4
content: 代码多的话别用截图

user: user-4
content: 引用 2 楼 Agony_yd 的回复:[quote=引用 1 楼 Italink的回复:]如果你不动手写一下，跳过这个从无到有的过程，可能永远都是初学者 写了，后面好多都说错。不会改[/quote] 那就尽量自己先改下，实在改不了把有错的代码发上来
user-0 提问: 指针变量

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 不知道是不是这个意思：  void fun(int* a) {     *a = 1;//这样改变     a = 1;//不是这样 }

user: user-3
content: 这不是传回，编程语言中函数中无法修改形参，但可以通过形参，间接寻址，改变其地址中的内容，指针作为函数形参，是将一个变量的地址传入进来，在函数中可以通过这个地址，寻址，然后修改其内容，你无法修改，可能是因为你想修改的就是一个指针，打个比方，你如果想要修改int类型，那么应该传入int*类型，如果你想修改int*类型，那么你应该传入int**类型
user-0 提问: 求大神解答，如何如何将元素逆序存放后输出，代码rux

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 逆置只需要将数组首尾元素交换就行，或者直接倒着输出。  #include <stdio.h> #define MAX 10 void main() { 	int i, j, a[MAX], temp; 	for (i = 0; i < MAX; i++) 		scanf("%d", &a[i]); 	printf("\n"); 	for (i = 0; i < MAX/2; i++) { 		temp = a[i]; 		a[i] = a[MAX-i-1]; 		a[MAX - i - 1] = temp; 	} 	for (i = 0; i < MAX; i++) 		printf("%6d", a[i]); }

user: user-3
content: 没问题啊，冒泡排序，楼主想问啥呢
user-0 提问: hdu2019的presentation error 是否有人愿意帮忙看看问题出在哪儿？感谢。

回复:
user: user-0
content: 引用 7 楼 SuperDay的回复:[quote=引用 6 楼 weixin_45896922的回复:][quote=引用 5 楼 SuperDay的回复:]printf("\0"); 首先字符串里面不需要写出\0，它会自动加到字符串末尾的； 其次，printf一个空字符串是几个意思呢？ 您好，我想用printf（“\0”）表达不做处理的意思，请问这个用法是不规范吗？如果不规范的话，那应该如何表示不做处理呢？[/quote] 不做处理写一个空语句就可以了，就一个分号[/quote] 好的，我知道了！非常感谢！

user: user-1
content: printf("\0"); 首先字符串里面不需要写出\0，它会自动加到字符串末尾的； 其次，printf一个空字符串是几个意思呢？

user: user-1
content: 引用 6 楼 weixin_45896922的回复:[quote=引用 5 楼 SuperDay的回复:]printf("\0"); 首先字符串里面不需要写出\0，它会自动加到字符串末尾的； 其次，printf一个空字符串是几个意思呢？ 您好，我想用printf（“\0”）表达不做处理的意思，请问这个用法是不规范吗？如果不规范的话，那应该如何表示不做处理呢？[/quote] 不做处理写一个空语句就可以了，就一个分号

user: user-0
content: 引用 5 楼 SuperDay的回复:printf("\0"); 首先字符串里面不需要写出\0，它会自动加到字符串末尾的； 其次，printf一个空字符串是几个意思呢？ 您好，我想用printf（“\0”）表达不做处理的意思，请问这个用法是不规范吗？如果不规范的话，那应该如何表示不做处理呢？

user: user-0
content: 引用 3 楼 user-2的回复:[quote=引用 2 楼 weixin_45896922 的回复:] 您好！我将最后一个else语句中的空格修改之后还是presentation error 请问我还有其他地方有问题吗？ 其他的我还没看。就看了一眼空格问题。将你改了之后的代码贴出来。不要拍照。不要截图。[/quote] 已解决问题！感谢！已以50分结帖，若未收到分数，还麻烦告诉我一声，我再进行结帖给分操作。

user: user-2
content: 引用 2 楼 weixin_45896922 的回复:您好！我将最后一个else语句中的空格修改之后还是presentation error 请问我还有其他地方有问题吗？ 其他的我还没看。就看了一眼空格问题。将你改了之后的代码贴出来。不要拍照。不要截图。

user: user-0
content: 引用 1 楼 user-2的回复:末尾不要空格。 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 ------------------------------------------------------- 您好！我将最后一个else语句中的空格修改之后还是presentation error 请问我还有其他地方有问题吗？

user: user-2
content: 末尾不要空格。 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 -------------------------------------------------------
user-0 提问: c语言

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: #include<stdio.h> int main() {     int a[5][5]= {0};     for(int i=0; i<5; i++)     {   for(int j=0; j<5; j++)         {   if(i==j)                 a[i][j]=i+1;             else if(i>j)                 a[i][j]=1;             printf("%4d",a[i][j]);         }         printf("\n");     }     return 0; }

user: user-0
content: 引用 1 楼 qq_45798109的回复:两层循环i,j    从1到5 i小于j    输出1 i=j          输出i i大于j    输出0 有这个的代码吗，不太懂

user: user-0
content: 引用 1 楼 qq_45798109的回复:两层循环i,j    从1到5 i小于j    输出1 i=j          输出i i大于j    输出0 有这个的代码吗，不太懂

user: user-3
content: 两层循环i,j    从1到5 i小于j    输出1 i=j          输出i i大于j    输出0
user-0 提问: 标识符规则

回复:
user: user-0
content: 引用 1 楼 user-5的回复:写在博客哟，论坛是用来讨论问题的 APP找不到入口随便找个地方记下来先了

user: user-0
content: 引用 1 楼 user-5的回复:写在博客哟，论坛是用来讨论问题的 APP找不到入口随便找个地方记下来先了

user: user-1
content: 变量名不能随便起，要有意义，见其名知其人

user: user-2
content: 3、标识符长度是由机器上的编译系统决定的，一般的限制为8字符（注：8字符长度限制是C89标准，C99标准已经扩充长度，其实大部分工业标准都更长）。 ===> C89的外部标识符长度的最低要求是6个字符，不是8个

user: user-3
content: 都9102了 还C99

user: user-4
content: 长度超出的部分被舍弃

user: user-5
content: 写在博客哟，论坛是用来讨论问题的
user-0 提问: 字符串的计算

回复:
user: user-1
content: 哪个位置看不懂？

user: user-0
content: 引用 2 楼 mymtom的回复: #include <stdio.h> #include <string.h>  char * encode(const char *in, char *out) {     int  k, n;     int  c, c0;     const char *pin;     char *pout;      pin = in;     pout = out;      *pout = '\0';     c0 = -1;     k = 0;     do {         c = *(pin++);         if (c0 == c) {             k++;         } else {             if (k == 1) {                 sprintf(pout++, "%c", c0);             } else if (k > 1) {                 pout += sprintf(pout, "%d%c", k, c0);             }             c0 = c;             k = 1;         }     } while (c != '\0');     return  out; }  int main(int argc, char *argv[]) {     char out[160 + 1];     char in[80 + 1];     char *ptr;      fgets(in, sizeof(in), stdin);     ptr = in + strlen(in) - 1;     for (;ptr >= in && (*ptr == '\n' || *ptr == '\r'); ptr++)         *ptr = '\0';      printf("%s\n", encode(in, out));      return 0; }  谢谢，虽然有点看不懂，但还是要谢谢你

user: user-1
content: #include <stdio.h> #include <string.h>  char * encode(const char *in, char *out) {     int  k, n;     int  c, c0;     const char *pin;     char *pout;      pin = in;     pout = out;      *pout = '\0';     c0 = -1;     k = 0;     do {         c = *(pin++);         if (c0 == c) {             k++;         } else {             if (k == 1) {                 sprintf(pout++, "%c", c0);             } else if (k > 1) {                 pout += sprintf(pout, "%d%c", k, c0);             }             c0 = c;             k = 1;         }     } while (c != '\0');     return  out; }  int main(int argc, char *argv[]) {     char out[160 + 1];     char in[80 + 1];     char *ptr;      fgets(in, sizeof(in), stdin);     ptr = in + strlen(in) - 1;     for (;ptr >= in && (*ptr == '\n' || *ptr == '\r'); ptr++)         *ptr = '\0';      printf("%s\n", encode(in, out));      return 0; }

user: user-2
content: 可以先动手写一下，出问题再问 刚好我之前做过类似的题目 仅供参考 https://blog.csdn.net/qq_40946921/article/details/81168111
user-0 提问: 求助

回复:
user: user-0
content: 引用 1 楼 user-2的回复:写个比较简单的冒泡呗 冒泡不行，超时了，过不了

user: user-1
content: 这个应该是让你重写快速排序或者堆排序 不让你用的那些函数就是题目要让你自己实现这些函数的意思啊

user: user-2
content: 写个比较简单的冒泡呗
user-0 提问: 这道题的代码怎么写，求解答(c语言)。

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 8 楼 Italink的回复:4n改成 4.0*n ，成功了，谢谢大佬

user: user-2
content: 4n改成 4.0*n

user: user-0
content: #include<math.h>写上了。

user: user-0
content: 引用 5 楼 Italink的回复:[quote=引用 3 楼 weixin_45501932的回复:][quote=引用 1 楼 Italink的回复:]你应该试着动手去写一下，出问题再来问哦 你应该试着动手去写一下，出问题再来问哦[/quote] #include<stdio.h> int main() {int n=5; float r=0.0035,p; p=1000*pow((1+r/4),4n); printf("%.2f",p); return 0;  }[/quote] pow函数位于math.h库中，include一下[/quote] pow函数那怎么写，一直出错

user: user-2
content: 引用 3 楼 weixin_45501932的回复:[quote=引用 1 楼 Italink的回复:]你应该试着动手去写一下，出问题再来问哦 你应该试着动手去写一下，出问题再来问哦[/quote] #include<stdio.h> int main() {int n=5; float r=0.0035,p; p=1000*pow((1+r/4),4n); printf("%.2f",p); return 0;  }[/quote] pow函数位于math.h库中，include一下

user: user-0
content: 引用 1 楼 Italink的回复:你应该试着动手去写一下，出问题再来问哦 你应该试着动手去写一下，出问题再来问哦[/quote] 编译不成功，不知道那错了。

user: user-0
content: 引用 1 楼 Italink的回复:你应该试着动手去写一下，出问题再来问哦 你应该试着动手去写一下，出问题再来问哦[/quote] #include<stdio.h> int main() {int n=5; float r=0.0035,p; p=1000*pow((1+r/4),4n); printf("%.2f",p); return 0;  }

user: user-3
content: 什么不会？是小学数学不会么？

user: user-2
content: 你应该试着动手去写一下，出问题再来问哦
user-0 提问: 看不懂2级c题目解析，小白求大神解析一下，蟹蟹

回复:
user: user-0
content: 引用 1 楼 自信男孩 的回复:要看到这个程序是做什么：s的元素值作为c的下表，并统计每个下表对应的个数。 如果了解到这一步，是不是就很好理解这个解析了  [quote=引用 1 楼 自信男孩 的回复:] 要看到这个程序是做什么：s的元素值作为c的下表，并统计每个下表对应的个数。 如果了解到这一步，是不是就很好理解这个解析了。谢谢您

user: user-1
content: 要看到这个程序是做什么：s的元素值作为c的下表，并统计每个下表对应的个数。 如果了解到这一步，是不是就很好理解这个解析了。
user-0 提问: C语言求解

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 引用 3 楼 qq_45896193的回复:[quote=引用 1 楼 asd123214的回复:]表示输出字符宽度为10 字符宽度什么意思啊，和下面输出的结果有什么关系嘛？[/quote] 二楼老哥说得很对，自己打一遍试试就能很容易理解了

user: user-0
content: 引用 1 楼 asd123214的回复:表示输出字符宽度为10 字符宽度什么意思啊，和下面输出的结果有什么关系嘛？

user: user-3
content: 建议输入环境里编译运行一下，看看输出结果和不加10的区别。 另外，还可以把10改成-10，已经把10改成其他数字都尝试一下，看看输出结果有什么不同～

user: user-2
content: 表示输出字符宽度为10
user-0 提问: 大佬可以帮我看看这段汇编语言什么意思吗

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 那是一个函数，根本看不到实现

user: user-0
content: 引用 3 楼 user-2 的回复：这里面并没有要求必须输入数字啊，你怎么看出来的？read six numbers…

user: user-2
content: 这里面并没有要求必须输入数字啊，你怎么看出来的？

user: user-0
content: 有人可以救救我吗？

user: user-0
content: 有木有人呀？？bdbd
user-0 提问: c_free5.0方面的

回复:
user: user-0
content: 有没有人会啊，太难了

user: user-0
content: 引用 1 楼 user-1的回复:程序没有语法错误，但是建议main函数要返回int，并且在正常运行结束的时候返回0 一样的，提示运行程序错误

user: user-1
content: 程序没有语法错误，但是建议main函数要返回int，并且在正常运行结束的时候返回0
user-0 提问: 编写程序

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 对了，还要把他转换成2019.11.18    18:22:48这种形式

user: user-2
content: 引用 2 楼 宇琳 的回复:是我方法用错了吗？我百度没搜到 搜索每个函数，可以空格加个c表明是c语言的，然后看每个函数的功能，再将其赋值到你的参数里，看对应的值，比如time_t seconds;seconds = time(NULL);头文件#include<time.h>

user: user-0
content: 是我方法用错了吗？我百度没搜到

user: user-2
content: 百度下自己验证下多简单的事
user-0 提问: 新生求指教

回复:
user: user-1
content: 字符串b结尾缺少空字符\0

user: user-2
content: #include <stdio.h> #include<string.h>  int aeiuo(char a[50],char b[50]);  int main( ) {     char a[50],b[50] = {0};     gets(a);     aeiuo(a,b);     puts(b);     return 0; }  //int aeiuo(char a[50],char b[50]){ int aeiuo(char *a, char *b) {     int i=0,j=0;     while(a[i]!='\0'){         if(a[i]==97||a[i]==101||a[i]==105||a[i]==111||a[i]==117){             b[j]=a[i];             j++;         }         i++;     }     b[j] = '\0';   //main中对b初始化或加上这句都可以解决你的乱码问题      return 0; } 供参考～

user: user-3
content: b没有用NULL（'\0'）来结束字符串
user-0 提问: C语言求解

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 看输入还是输出，输入的话限制位数，不超过10位数，输出的话用于格式对其之类的，不足前补空格，超过的话不截断，全部输出

user: user-3
content: 整数不足十位的话前面补空格，大于等于十位就正常显示

user: user-4
content: 代表设置宽度  %10d就是最大只能输入十位整数
user-0 提问: 新人求助：看图，输出得不到我想要的数值，软件是visual studio 2013

回复:
user: user-1
content: 引用 5 楼 Amin Zeng 的回复:@ scanf_s 用法和scanf 不一样  这个visual studio 2013，如果我用了scanf，他会给我报错，然后就没然后了。。用法不一样 所以你不能直接套用 scanf 的用法 要么 你重新用scanf  要么 你自己百度查清楚 scanf_s 要怎么用  而不是生搬硬套拿 scanf_s 当scanf

user: user-2
content: 引用 7 楼 Amin Zeng 的回复:[quote=引用 6 楼 datoulaile123 的回复:] [quote=引用 5 楼 Amin Zeng 的回复:] @ scanf_s 用法和scanf 不一样  这个visual studio 2013，如果我用了scanf，他会给我报错，然后就没然后了。。 加句这个#pragma warning(disable:4996)，忽略这个错误[/quote]  试了下，加了这句话就可以用了，并且可以输出正确的结果。这个是什么原因呢？[/quote] VS版本问题吧，我也不是太清楚，我写的这个是忽略4996的错误。让scanf可以使用，不然会报unsafe什么的错误，而且你的代码运行应该也是没有问题的，我也是2013，不知道为什么你的有错

user: user-0
content: 引用 6 楼 datoulaile123 的回复:[quote=引用 5 楼 Amin Zeng 的回复:] @ scanf_s 用法和scanf 不一样  这个visual studio 2013，如果我用了scanf，他会给我报错，然后就没然后了。。 加句这个#pragma warning(disable:4996)，忽略这个错误[/quote]  试了下，加了这句话就可以用了，并且可以输出正确的结果。这个是什么原因呢？

user: user-2
content: 引用 5 楼 Amin Zeng 的回复:@ scanf_s 用法和scanf 不一样  这个visual studio 2013，如果我用了scanf，他会给我报错，然后就没然后了。。 加句这个#pragma warning(disable:4996)，忽略这个错误

user: user-0
content: @ scanf_s 用法和scanf 不一样  这个visual studio 2013，如果我用了scanf，他会给我报错，然后就没然后了。。

user: user-1
content: 引用 2 楼 Amin Zeng 的回复:尝试修改了，但是还是老样子。这题需要求输入字符，它在字母表中前一字符和后一字符，并输出他们的ASCII值scanf_s 用法和scanf 不一样

user: user-1
content: 引用 1 楼 寻开心 的回复:int c1， c2 改成 char类型这个没问题 printf 里面 都一样

user: user-0
content: 尝试修改了，但是还是老样子。这题需要求输入字符，它在字母表中前一字符和后一字符，并输出他们的ASCII值

user: user-3
content: int c1， c2 改成 char类型
user-0 提问: C语言小白    求解

回复:
user: user-0
content: 引用 1 楼 user-3的回复:只要求出来就行了吗？ n是什么数据范围的？ n是整数范围，如果距离一样的话，输出脚小的那个素数

user: user-0
content: 引用 1 楼 user-3的回复:只要求出来就行了吗？ n是什么数据范围的？ n是整数范围，如果距离一样的话，输出脚小的那个素数

user: user-1
content: /*************************************************** Function: 检查num是否是质数 Date: 2019-10-18 22:30:35 ***************************************************/ int prime_two(int num) { 	if (num < 2) { 		return 0;// 不是质数 	} 	int square_root = (int)sqrt(num);// 头文件math.h 	int i; 	for (i = 2; i <= square_root; ++i) { 		if (num % i == 0) { 			return 0;// 不是质数 		} 	} 	return 1;// 质数 }   /* Function: 返回斐波那契数列第n项           循环实现 Date: 2019-11-19 13:47:58 */ int fibonacci_one(int n) { 	if (n == 0) { 		return 0; 	} 	int f1, f2, f3, i; 	f1 = f2 = 0; 	f3 = 1; 	for (i = 1; i < n; ++i) { 		f1 = f2; 		f2 = f3; 		f3 = f1 + f2; 	} 	return f3; }  ------------------------------------------------------------------ 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 ------------------------------------------------------------------

user: user-2
content: 输入n  计算 f(n)  //  这个可以用一个循环来实现，不要用递归  从f(n)开始向两边（距离最近）找素数呗 ( 没准儿可以找出一对儿呢)  自己写代码，有了问题再问

user: user-3
content: 只要求出来就行了吗？ n是什么数据范围的？
user-0 提问: 求帮忙

回复:
user: user-1
content: 判断是a[i] 与new比较；（建议用其他变量名字代替new) 接下来是从后面开始，依次向后覆盖～一遍腾出a[i]的位置。即new要赋值的位置。  a[i-1]；

user: user-2
content: a[i] a[i-1]
user-0 提问: 我这个代码为什么输入两个数后还得打个等于号才能得出结果？？？

回复:
user: user-0
content: 引用 2 楼 寻开心的回复:格式化输入的问题， 把scanf那句里面的\n去掉吧 Ok搞定了

user: user-1
content: scanf("%d%d\n",&a,&b); 改一下：  scanf("%d%d",&a,&b);

user: user-2
content: 格式化输入的问题， 把scanf那句里面的\n去掉吧

user: user-3
content: 没理解你的意思 你把等号删掉后b和sum是连在一起的。。。 而且你得出sum之后不输出你求他干嘛
user-0 提问: 为什么要这样编，刚学C语言，不明白

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 4 楼 user-2的回复: i 行数 空格数 星号数 1  1     4      1 2  2     3      3 3  3     2      5 4  4     1      7 找规律。空格个数和i什么关系？星号个数和i什么关系？  好我明白了，谢谢您耐心解答

user: user-2
content: i 行数 空格数 星号数 1  1     4      1 2  2     3      3 3  3     2      5 4  4     1      7 找规律。空格个数和i什么关系？星号个数和i什么关系？

user: user-2
content: 那你认为 j 应该从多少开始？为什么？

user: user-0
content: 引用 1 楼 user-2的回复:第 1 个循环是输出 5 层。 第 2 个循环是输出空格。 第 3 个循环是输出星号。 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 ------------------------------------------------------- j，k那两个循环看不懂，j，k为什么分别从0，1开始，循环条件也不懂

user: user-2
content: 第 1 个循环是输出 5 层。 第 2 个循环是输出空格。 第 3 个循环是输出星号。 ------------------------------------------------------- 1、如果问题已经得到解决，请及时结贴。结贴教程。 2、如果没有解决，可继续追问。 3、只能在电脑网页上结贴，手机不能结贴。 CSDN论坛新手指南 -------------------------------------------------------
user-0 提问: libxml2解析xml异常-

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: <?xml version="1.0" encoding="GBK"?> ===> <?xml version="1.0" encoding="GB18030"?>  貌似libxml2对GBK支持不完整

user: user-3
content: <?xml version="1.0" encoding="GBK"?> 改成UTF-8试试

user: user-3
content: 李某的那个某系统不认识吧。 怎么是个长方形啊？
user-0 提问: c语言

回复:
user: user-1
content: 怎么赶脚楼主的代码是只认为abcd是一位正整数呢？ 原题描述可是abcd是整数， 那就包括正数负数和0，也可以多位吧

user: user-2
content: 输入直接用格式符“%d/%d+%d/%d”就行，能成功输入
user-0 提问: 我不懂这道题怎么使用并查集

回复:
user: user-1
content: 楼主可以参考一下这个帖子 https://blog.csdn.net/qq_41593380/article/details/81146850

user: user-2
content: 大体思路是：把所有连通在一起的城市都打上相同的标记，也就是第一次开始有连通的城市。 最后统计有多少给没有连通的城市，以及不同的连通区的数量就可以了（因为第一个连通的城市本身也是-1， 也被当做未连通的城市，所以无需单独的统计）

user: user-3
content: 使用并查集可以得到集合的总数，总数-1就是需要的最少路径。

user: user-1
content: 无向图的连通分量？
user-0 提问: C语言 OJ题

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 猜测最可能的原因是求最大公因数的时候两数相乘爆了。

user: user-3
content: 可能数字精度太小，乘积之后就爆炸了

user: user-4
content: 你是要我们猜你写的什么代码，顺便猜一下你哪里错了吗
user-0 提问: C语言问题，为什么第三个循环嵌套里计算只执行了一次？

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html
user-0 提问: 不知道出现什么问题，逆置的结果没有出来，还是原来的链表

回复:
user: user-1
content: h=(linklist *)malloc(sizeof(linklist)); p=h->next; h->next=null;	 变量h没有初始化。 另外，你没有释放内存，产生泄露。
user-0 提问: 怎么算，可以详细的讲解一下吗

回复:
user: user-1
content: 先执行循环体一次，b＝b-a＝7,a＝3   whlie时b--，b＝6，不符合小于0跳出循环，选c

user: user-2
content: VS2015调试结果
user-0 提问: C语言，求大佬

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: 引用 1 楼 不闻窗外事的回复:你这个输出样例错了吧，不应该是3 2 1吗，这个太简单了，自己写一下吧 写了。一直显示答案错误，不知道错在哪(⊙o⊙)！

user: user-2
content: 动手写一下，出问题在问

user: user-3
content: 你这个输出样例错了吧，不应该是3 2 1吗，这个太简单了，自己写一下吧
user-0 提问: 输入一行字符，统计其中英文字符数字字符空格和其他字符的个数

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: # include <stdio.h> #include<ctype.h> int main(void) {     int i,number=0,english=0,space=0,other=0;     char a[11];     printf("输入10个字符:");     gets(a);      for(i=0;i<11;i++)     {         if(isalnum(a[i])) number++;         else if(isalpha(a[i])) english++;         else if(isspace(a[i])) space++;         else if(isalnum(a[i])==0&&isalpha(a[i])==0&&isspace(a[i])==0) other++;     }     printf("英文字符共%d个\n数字字符共%d个\n空格字符共%d个\n其他字符共%d个",english,number,space,other);     return 0; }

user: user-2
content: for(i=0;a[i]!='\0';i++)     {         scanf("%s",a[i]);     } 你能告诉我这是啥操作吗，如果你要输入一个字符串，就不需要for循环，如果你要输入字符，就用%c，不懂你这是在干嘛
user-0 提问: 新手学C语言

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 引用 3 楼 liups 的回复:传统的方式是OLE方式调用word，也有可能是相应的三方控件（dll）来处理 https://blog.csdn.net/witkin/article/details/4752796

user: user-2
content: 传统的方式是OLE方式调用word，也有可能是相应的三方控件（dll）来处理

user: user-0
content: 引用 1 楼 user-3的回复:怎么读取文件，与编译器无关吧。 不好意思，我的意思是怎么怎么写代码可以对word文件中的内容进行处理。

user: user-3
content: 怎么读取文件，与编译器无关吧。
user-0 提问: void create(&complex c，float x，float y）中的&

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 如楼上所述，&应该在后面表示对象的引用，引用的好处嘛，主要两点：一是Create函数中针对C的修改结果会得以保存到函数调用结束，如果不是引用，那么Create函数对C的修改在函数调用结束后不可见，二是可以避免了不必要的对象拷贝了，速度快，占用内存小~。

user: user-3
content: 没见过这种写法唉，都是使用Complex &这样的写法表示引用
user-0 提问: 刚刚出炉的新手c程序设计疑惑请教与交流。

回复:
user: user-0
content: 谢谢帮助我的各位，完美通过的代码见下面： #include<stdio.h> #include<math.h> int main() { 	double r,h,l,s,sq,v,vz; 	double pai=3.14159265; 	printf("请输入圆半径r,圆柱高h:"); 	scanf_s("%lf,%lf",&r,&h); 	l=2*pai*r; 	s=pai*pow(r,2); 	sq=4*pai*pow(r,2); 	v=4/3*pai*pow(r,3); 	vz=pai*pow(r,2)*h; 	printf("l=%7.2lf\n",l); 	printf("s=%7.2lf\n",s); 	printf("sq=%7.2lf\n",sq); 	printf("v=%7.2lf\n",v); 	printf("vz=%7.2lf\n",vz); 	return 0; }

user: user-0
content: 输入的时候注意逗号,因为scanf_s中要求有逗号的.也要注意逗号的中英文。[/quote] 代码问题的原因是输入时scanf_s不能用%f而要用%lf，而printf是没关系的，会自动适应成双精度的[/quote]  按照您以及上面各位的建议，完美解决。 谢谢各位了。

user: user-1
content: 引用 6 楼 自信男孩 的回复:#include<stdio.h> #include<math.h>  int main() {     double r,h,l,s,sq,v,vz;     double pai=3.14159265;      printf("请输入圆半径r,圆柱高h:");     scanf_s("%f,%f",&r,&h);     l = 2 * pai * r;     s = pai * pow(r, 2);     sq = 4 * pai * pow(r, 2);     v = 4.0/ 3 *pai * pow(r,3);     vz = pai * pow(r,2) * h;      printf("l=%6.2lf\n",l);     printf("s=%6.2lf\n",s);     printf("sq=%6.2lf\n",sq);     printf("v=%6.2lf\n",v);     printf("vz=%6.2lf\n",vz);      return 0; } 供参考～  输入的时候注意逗号,因为scanf_s中要求有逗号的.也要注意逗号的中英文。 代码问题的原因是输入时scanf_s不能用%f而要用%lf，而printf是没关系的，会自动适应成双精度的

user: user-1
content: scanf_s("%f,%f\n",&r,&h,3);改成scanf_s("%lf,%lf", &r, &h);double类型输入不能用%f（不是很明白你在最后写个,3是什么意思）

user: user-2
content: 不对就是不对，肯定要改，我有什么好试的？你的程序不止一个问题，知道吗？就像某楼所说的，要学会调试程序。我早都会了，我会了不等于你会了，你会出什么问题不等于我就会出什么问题

user: user-3
content: 给初学者的建议， 学会debug：     1 对所有的输入数据都要保持怀疑的心态        所有输入的数据，不管是键盘读取的还是文件提取的， 都要先输出一次， 对比是否有误     2 对于长一点的算法， 分出步骤， 对每个步骤的输入和输出数据，也要检查一遍        确保上一阶段的数据是对的，再进行下一阶段的工作     3 断点调试技巧远比语法重要  在你的scanf后面加一句 printf("r:%ld h:%lf\n", r, h); 看看你输入的数据是否是你要的

user: user-4
content: #include<stdio.h> #include<math.h>  int main() {     double r,h,l,s,sq,v,vz;     double pai=3.14159265;      printf("请输入圆半径r,圆柱高h:");     scanf_s("%f,%f",&r,&h);     l = 2 * pai * r;     s = pai * pow(r, 2);     sq = 4 * pai * pow(r, 2);     v = 4.0/ 3 *pai * pow(r,3);     vz = pai * pow(r,2) * h;      printf("l=%6.2lf\n",l);     printf("s=%6.2lf\n",s);     printf("sq=%6.2lf\n",sq);     printf("v=%6.2lf\n",v);     printf("vz=%6.2lf\n",vz);      return 0; } 供参考～  输入的时候注意逗号,因为scanf_s中要求有逗号的.也要注意逗号的中英文。

user: user-0
content: 引用 4 楼 SuperDay 的回复:double的输出格式是%lf，float才是%f  谢谢你的回复，但还是不对。您如果不嫌麻烦，可以在vs2013或更高版本的试一下。  想弄懂这个对我来说有点难。只好用vs2010，学习谭浩强老师的第五版《c程序设计》了。

user: user-2
content: double的输出格式是%lf，float才是%f

user: user-0
content: 引用 2 楼 不闻窗外事 的回复:scanf_s("%f,%f\n",&r,&h,3);最好不要在scanf中使用\n，很容易让你吐血  你好！去掉\n后倒是可以运行，但明显错误。

user: user-5
content: scanf_s("%f,%f\n",&r,&h,3);最好不要在scanf中使用\n，很容易让你吐血

user: user-0
content: 我的编译环境是microsoft visual studio ultimate 2013+win10  #include<stdio.h> #include<math.h> int main() { 	double r,h,l,s,sq,v,vz; 	double pai=3.14159265; 	printf("请输入圆半径r,圆柱高h:"); 	scanf_s("%f,%f\n",&r,&h,3); 	l=2*pai*r; 	s=pai*pow(r,2); 	sq=4*pai*pow(r,2); 	v=4/3*pai*pow(r,3); 	vz=pai*pow(r,2)*h; 	printf("l=%6.2f\n",l); 	printf("s=%6.2f\n",s); 	printf("sq=%6.2f\n",sq); 	printf("v=%6.2f\n",v); 	printf("vz=%6.2f\n",vz); 	return 0; }  请教一下热心网友：调式出现问题。输入数据后没有任何反应。实在是郁闷。
user-0 提问: C语言题目

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-2
content: 对撞指针的典型运用，进一步运用在快排的递归中。建议去查快排，可以直接查到你这个问题的解。或者去学习一下什么是对撞指针。

user: user-3
content: 什么叫数组有元素，但是你这个分为两个子集，可以去查一下快速排序，就是这玩意

user: user-0
content: 求大神帮忙解答一下啊
user-0 提问: C语言输出所有的水仙花数，为什么这个代码输不出来

回复:
user: user-1
content: 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10581430.html 希望对你有帮助：https://blog.csdn.net/it_xiangqiang/category_10768339.html

user: user-0
content: for后要求一次abc a=n/100     b=（n-100a）/10      c=n％10

user: user-0
content: 搞懂了 犯了个很低级的错误

user: user-2
content: 你这程序也太秀了，程序自己把a,b,c给推断出来了

user: user-0
content: 如果改成这个呢？ if（n==a*a*a+b*b*b+c*c*c&&n==a*100+b*10+c） 呢？

user: user-3
content: if的括号都没捋清楚
user-0 提问: 求和

回复:
user: user-1
content: // 类似这个： // 来自：http://c.biancheng.net/view/497.html #include <stdio.h> #include <stdlib.h> #include <math.h> int main(){     float s=1;     float pi=0;     float i=1.0;     float n=1.0;     while(fabs(i)>=1e-6){         pi+=i;         n=n+2;         // 这里设计的很巧妙，每次正负号都不一样          s=-s;          i=s/n;     }     pi=4*pi;     printf("pi的值为：%.6f\n",pi);          return 0; }
user-0 提问: alpha为0表示完全透明还是不透明？

回复:
user: user-1
content: 引用 3 楼 六道佩恩的回复:[quote=引用 2 楼 寻开心 的回复:] alpha当是不透明度理解。 0是全透，1是完全不透 256个值啊亲[/quote] 有些时候会用[0,1]间的浮点数，我遇到的alpha有些地方0是全透明，有些又是不透明，应该就是你说的那种，具体理解和实现有些不同吧，先写个程序测试一下

user: user-0
content: 引用 5 楼 Italink 的回复:[quote=引用 3 楼 六道佩恩的回复:][quote=引用 2 楼 寻开心 的回复:] alpha当是不透明度理解。 0是全透，1是完全不透 256个值啊亲[/quote] 有些时候会用[0,1]间的浮点数，我遇到的alpha有些地方0是全透明，有些又是不透明，应该就是你说的那种，具体理解和实现有些不同吧，先写个程序测试一下[/quote] 既然你两种情况都遇到过，那就OK了，说明两种情况都是存在的，没有完全统一

user: user-0
content: 引用 1 楼 proorck2019 的回复:你自己编个程序验证一下。 已经说了呀，win32中0是不透明，但百度的结果大部分都是为完全透明，我想这可能是不同的实现方案，不一定是统一的

user: user-0
content: 引用 2 楼 寻开心 的回复:alpha当是不透明度理解。 0是全透，1是完全不透 256个值啊亲

user: user-2
content: alpha当是不透明度理解。 0是全透，1是完全不透

user: user-3
content: 你自己编个程序验证一下。
user-0 提问: 这个判断奇偶数的程序有问题吗？

回复:
user: user-0
content: 引用 1 楼 子衿兄的回复:printf的格式化输出 中有一个%d，但是你没有传一个变量给它，那它能输出什么呢。  噢噢噢对，傻了，怪不得

user: user-1
content: printf("%为偶数\n",a);  printf("%为奇数\n",a);

user: user-2
content: printf的格式化输出 中有一个%d，但是你没有传一个变量给它，那它能输出什么呢。