小白发问,这个C语言的程序该怎么写?
把printf("%s
","");把%s
去掉,%s是已定义的变量的占位符,后面的汉字不是定义变量,不能使用占位符;这是错误操作;
printf("19009999张三
");
另一种正确使用方式:
char a[40]={"19009999张三"};//定义字符型数组并赋值;
printf("%s",a);//数组a是一个已定义的字符变量,必须有占位符才能输出;
比大小 有个更好的
如果你用的是dev的话把你的代码修改了下 代码如下:
#include
int max(int x,int y)
{
return x>y?x:y;
}
int main()
{
int a,b,c;
scanf("%d%d",&a,&b);
printf("max=%d
",max(a,b));
while(1);
return 0;
}
在DEV上通过了 注意程序最后要加个死循环 DEV运行后运行窗口是瞬间消失的 所以用一个死循环让运行窗口保留住,所以会有while(1);这句话。
z=x>y?x:y;的意思是x>y的话就把x赋给z 如果x<=y就把y赋给z;
一般刚开始学可以用VC++这个编译器
或者可以用devCpp这款也不错,都比较点单 自己下下来试试就会了
#include<stdio.h>
#include<math.h>
int main()
{
printf("请输入三角形的三条边的边长(用空格隔开):");
double a, b, c;
scanf_s("%lf %lf %lf", &a, &b, &c);
printf("%lf %lf %lf", a, b, c);
if ((a <= 0) || (b <= 0) || (c <= 0))
{
printf("输入错误!(请检查输入值应为正数)
");
return main();
}
if (((a + b) < c) || ((a + c) < b) || ((b + c) < a))
{
printf("这三条边不能构成三角形。
");
return 0;
}
double sum;
sum = a + b + c;
printf("该三角形周长为%lf", sum);
if ((a == b) && (b == c))
{
printf("该三角形为等边三角形。
");
return 0;
}
if (((a == b) && (b != c)) || ((a == c) && (b != c)) || ((b == c) && (a != c)))
{
printf("该三角形为等腰三角形。
");
return 0;
}
if (((pow(a, 2) + pow(b, 2)) == pow(c, 2)) || ((pow(a, 2) + pow(c, 2)) == pow(b, 2)) || ((pow(b, 2) + pow(c, 2)) == pow(a, 2)))
{
printf("该三角形为直角三角形。
");
return 0;
}
printf("该三角形为一般三角形。
");
return 0;
}
这个你怎么思考的就怎么写,然后进行调试,每种情况我们正常怎么判断就怎么个逻辑写
直接if往上套就行了
答:if (((a == b) && (b != c)) || ((a == c) && (b != c)) || ((b == c) && (a != c))){ printf("该三角形为等腰三角形。\n");return 0;} if (((pow(a, 2) + pow(b, 2)) == pow(c, 2)) || ((pow(a, 2) + pow(c, 2)) == pow(b, 2))...
答:int main(){ char s[10] ={0},ch =0;int n, cnt=0, i =0,flag = 0;do { printf("输入一个10~1000的正整数(不包含10和1000):");scanf("%d", &n);}while((n <= 10)||(n >= 1000));while(n > 0){ s[cnt++] = n%10;n /= 10;} switch(cnt){ case 2:{ if...
答:int main(void) { int N, flag = 1;scanf("%d", &N);int **a = (int **)malloc(sizeof(int *) * N);for (int i = 0; i < N; i++)a[i] = (int *)malloc(N * sizeof(int));for (int i = 0; i < N; i++)for (int j = 0; j < N; j++) { scanf("...
答:long fac(int i){ if(0==i||1==i)return 1;return i*fac(i-1);} int main(){ const int sp=4;int n=5,i,j;scanf("%d",&n);for(i=0;i<n;i++){ printf("%*ld",sp*(n-i-1)+1,1);for(j=1;j<=i;j++)printf("%*ld",sp*2,fac(i)/fac(j)/fac(i-j));...
答:1){ if(guess<0||guess>10){ printf("好遗憾,欢迎下次再来!\n");break;} if(guess<num)printf("您输入的数字太小,请重试:\n");else if(guess>num)printf("您输入的数字太大,请重试:\n");else { printf("找到了,这个数是%d\n",num);break;} scanf("%d",&guess);} } ...
答:一个基础的C语言程序包含:1、预处理命令(比如开头#include语句导入头文件,还有定义常量等)。2、全局变量定义。2、函数声明语句(就是有函数返回值类型,有参数类型,有函数名,但没有大括号的函数体内容)说明:如其他函数定义在main函数之下,这里需写声明,如定义在main函数之上,无需写声明。3、...
答:int b = (int)sqrt(a);int fact = 0;for(int i = 2; i<=b; i++){ if(a%i == 0)fact = 1;} return fact;} void main(){ int a,b=0;for(int i=2; i<=100;i++) //判断从2到100的每个数是否为素数 { a = prime(i);if(a == 0){ b++;printf("%d ",...
答:h> int fac(int n){if(n==0)return 1;return n*fac(n-1);} main(){ int n,i,j;scanf("%d",&n);for(i=0; i<=n; i++){ for(j=0; j<n-i; j++)printf(" ");for(j=0; j<=i; j++)printf("%4d",fac(i)/(fac(j)*fac(i-j)));printf("\n");} } ...
答:出错行号:第七行 原因:应添加j++;出错行号:第8行 原因:字符应用单引号括起 正确代码:include <stdio.h> void fun(char *s){ int i, j;for (i=0, j=0; s[i]!='\0'; i++)if (s[i]>='0' && s[i]<='9'){ s[j] = s[i];j++; //第一个错误 } s[j]='...
答:include<stdio.h> int main (){ int i,n,x,t,s=0,a[1000];scanf("%d",&x);for(n=0; a[n++]=x;)scanf("%d",&x);t=--n%2;for(i=t;i<n-1+t;i++)s+=a[i];printf("%.2f\n",1.0*s/(n-1));return 0;} ...