www.ctrt.net > C语言问题!

C语言问题!

先回答你第一个问题,递归函数确实是让ch变量不断获得新的值,从1到5。需要注意的是,之后每一次的赋值只在当前的大括号内有效: void get_put() { char ch; ch=getchar(); if (ch!='\n') get_put();//这里相当于再次出现了一个函数的大括号(ge...

大概看了一下,楼主的意思是 通过CreatPolyn创建一个链表,而且貌似元素是根据expn的值有序排列的 创建时首先搜索待插入元素的关键字是否存在,不存在才插入 插入的时候,楼主不想再做一次比较了,因此搞了个q想来保存插入的位置 抛开逻辑不谈...

因为s是一个指向float类型的指针,在初始化的时候,*s=a;所以s指向了数组a,因为数组名代表了数组的首地址,也就是s此刻指向了数组a的第一个元素a[0],而a[0]==1.1,然而,你调用fun(a,b,s),但是在函数fun中并没有对main()函数中的s指针有任何改...

#include #define n 30typedef struct student{char name[8]; int score;};student R[n];int main(void){int num,i,j,max;student temp; printf("\n请输入学生成绩: \n"); for(i=0;i

#include #include void f1(char *c1, char *c2){ char p = *c1; *c1 = *c2; *c2 = p;}int main(){ int i = 0, j = 0; char str[80] = {'\0'}; char *pleft, *pright; printf("输入字符串:"); gets(str); i = 0; j = strlen(str)-1; for(; i < ...

n 越界了,超过了100. 似乎应当把 n=n+i 改成 n=n+1 或 n++ 还有其他问题:建议这样修改: for(i=0;i

应该答案是150 选D 程序中 c=sum*b; 在编译时相当于 c=(10+20)*b; 也就是sum的地方用(10+20)代入 如果改成 #define sum 10+20 则答案是110 因为此时 在编译时相当于 c=10+20*b;

#include void main() { int a,b,c; for(a=0;a

#include #define N 10int delnum(int a[],int num,int n){ int i,j=0; /*用j记录数组a中不等于num的元素个数(即需要保存的元素个数), 边扫描数组a边统计j,并将不等于num的元素向前放置在j位置上,最后 修改数组的长度 */ for(i=0;i

没考虑边界数据,给你改了下: int prime(int p){int i;if (p < 2) return 0; //题目很明确说了2以下不是素数for (i = 2; i = p / 2 && p != 1)return 1;}}int PrimeSum(int m, int n){int sum=0;while (m

网站地图

All rights reserved Powered by www.ctrt.net

copyright ©right 2010-2021。
www.ctrt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com