有问题就有答案
Q1:C语言A-1问题,没有负数求代码。如题(注意100010,010等类型数据)
# includeintmain(){ chara[1024];intnintwhile(scanf(" % s ",a)!=EOF){ n=strlen(a);if(a[n-1]=" 1 "){ a[n-1]-=1;} else { for(j=n-1;a[j]==" 0 ";j-);a[j]=a[j]-1;对于(j=j ^ 1;j
Q2:C语言几个问题
1:程序是对的 if(!(i%5)&&!(i%3)) s+=i;如果i能整除5,那么i%5就为0,!(i%5)就为1,同理i%3也是这样,比如i=15的时候,if条件就为true,所以s+=i才会执行,最后结果s=912:选c,以为第二个循环做完之后,j=3;第三个循环开始的时候i在变,而j没变,a[0][3]到a[7][3]都没有赋值,默认都为0;所以最后的结果x为0
Q3:c语言小问题
/*1. 编写函数int Del_findgcd(int a[],int n,int *f),对于a指向的数组中前n个元素,删除所有下标值为奇数的数组元素中保存的整数,求得数组中剩余的n/2(或n/2+1)个整数的最大公约数并将其保存到f指向的变量中。函数返回a数组中剩余整数的个数。 2. 编写main函数,声明一个一维数组并用测试数据初始化,调用Del_findgcd函数删除数组中的所有满足条件的整数并求出剩余整数的最大公约数,将数组中剩余的整数和这些整数的最大公约数输出到屏幕。最后将本人的学号符串也输出到屏幕。 【测试数据与运行结果】 测试数据: 6 8 9 11 12 13 15 16 18 19(n=10) 输出结果:6 9 12 15 18,max common divisor=3 */#include #include int maxcd(int a,int b) { int i,temp; if(b>a) { temp=b; b=a; a=temp; } for(i=a;;i--) if((a%i==0)&&(b%i==0)) break; return i; } void Del_findgcd(int a[], int n, int *f) { int m,i,j=0; for(i=0;i<n;i++) { if (i%2==0) a[j++]=a[i]; } a[j]="\0"; m=maxcd(a[0],a[1]); for(i=2;i<5;i++) m=maxcd(m,a[i]); *f=m; } main() { int *f=NULL; int j,m; int a[10]={6,8,9,11,12,13,15,16,18,19}; int n=10 ; Del_findgcd(a,n,f); for(j=0;j<n/2;j++) printf("%d",a[j]); printf("\nmax common divisor=%d\n", *f; printf("my number is 081270059\n"); } 这里我把你的源程序改了一点,但基本算法没变。你看行不行啊。好难找啊。
Q4:C语言问题?
参考lishimin1972兄的,修改了一下#include int main(int argc, char *argv[]){ unsigned int n,m,i,r; printf("Please input a number: "); scanf("%d",&n;); //convert for(i=0;i>=1; m<>=1; printf(">>%d\n",m); return 0;}
Q5:C语言的问题
有些系统(如PDP,VAX-11,Turbo C)将祖父变量的最高位作为符号为,也就是将字符出来成带符号的整数,即signed char 型。对此类型,如果ASCII码在0到127之间,用%d输出时是正数,用%c输出时是对应的字符;否则,用%d输出时是负数,用%c时没有输出。
Q6:C语言比较10个数的大小 里面有负数就不行
#include int main(){ int a[10]; int min,max,i; printf("请输入10个数字:\n"); for(i=0;i<10;i++) scanf("%d",&a;[i]); max=min=a[0]; printf("\n"); for(i=0;imax)max=a[i]; if(a[i]<min) min=a[i]; } a[0]=max; a[9]=min;for(i=0;i<10;i++)printf("%d ",a[i]);printf("\n");return 0;}//输入负数的时候,负号和数字之间不要有空格