float w ; *a=*a+*a; w=*a; *a=*b; *b=w;这句的效果是,a自加,然后ab对换,由于fun函数是按地址传递的,所以调用之后会影响到主程序里的x和y,%2.0f表示以浮点型输出,整数部分至少需要两位,不足两位的补空格占够两位,小数部分只留一位,所以输出结果是 3.0, 4.0,注意这两...
if(xiaoshu<=4){ zhengshu=((int)(xinhcj))+1;} else { zhengshu=(int)(xinhcj);} 这里应该满足xiaoshu<=4这个条件吧。原因如下:hcj=((int)(((w+q+b+s+g)/ xinqishu-w)*10)));这句。已知w=3,q=7,b=7,s=2,g=6,xinqishu=2,所以w+q+b+s+g=25,但(w+q+b+s+g)/...
过程都打印出来了 include<stdio.h> int main(){ int i,j,sum;sum=0;for(i=1;i<10;i++)for(j=1;j<10;j++){ sum+=i*j;printf("i*j=%d*%d ",i,j);} printf("\nsum=%d\n",sum);return 0;}
试试这个是不是你想要的 include<stdio.h> void main(){ int i,j;for(i=1;i<10;i++)printf("%4d",i);printf("\n");for(i=1;i<10;i++)printf(" =");printf("\n");for(i=1;i<10;i++){ for(j=1;j<i;j++)printf(" ");for(j=i;j<10;j++)printf("%4d",...
错在变量a 没有定义类型,这里应该是int类型,所以正确的程序为:include <stdio.h> int main() { int a=10; printf("%d\n",a); return 0; } 变量:变量在使用前,必须在代码中进行声明,即创建该变量。在使用变量之前,大多数语言通常首先需要声明变量。就是说,必须事先告诉编译器...
按输入语句 scanf("%d,%d,%d",&x,&y,&z);输入的时候必须满足格式,即按以下格式输入:10,20,30必须用逗号分隔(不是中文输入法下的逗号),而且逗号前后不能有空格
for(i = 0; i < 4; i++) p[i] = &a[i][0]; 4个指针 指向 a 数组的4个行首。(p[i] + i) = 1 ; // p[i][i] == a[i][i](对角线上的元素)赋值1 (p[i] + 4 - (i + 1)) = 1; //p[i][3-i] == a[i][3-i](另一对角线上的元素...
include <stdio.h>void main( ){ char s[20], ch; int i,j; printf("Please input a string:\n"); gets(s);//输入字符串 printf("Please input acharacter:\n"); ch=getchar();//输入一个字符。 for(i=0;i<20;i++)//对于每个位置做遍历。 { fo...
例如:如果之前p指向a[0],那么p就重新指向a[1]。5) 继续执行 2)。下一步的目的是找出这10个数中最大的数的地址:s,方法和第一步类似,用p遍历数组a[10],s默认指向a[0],if (*p>*s) s=p; 比较p地址指向的整数是否大于s地址指向的整数,如果是的话就把s指向p指向的整数。
回答:你那代码里面的符号全部都是中文的,是不能通过编译的,需要英文标点符号才可以,下面已经改好了: #include<stdio.h>int main(){ char *a="123456789"; int i; i = fun(a+2); printf("%d",i);}int fun(char *s){ char* p = s; while(*p) p++; return (p-s);}