且&&的优先级高于或||,所以有时候需要加括号;拿不准就按照自己的意愿都加一波。
变量名易于理解,比如i,j,temp就很好。
计算各位之和,能想到的简单方法
#include<stdio.h>
int main(void)
{
int n,i,s;
s=0;
scanf("%d",&n);
while(n!=0)
{
i=n%10;
n/=10;
s+=i;
}
printf("%d\n",s);
return 0;
}
找出最大值,能想到的简单方法
#include<stdio.h>
int main(void)
{
int a[4],i,max;
for(i=0;i<4;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<4;i++)
{
if(a[i]>a[0])
{
a[0]=a[i];
}
}
printf("%d",a[0]);
return 0;
}
哥德巴赫猜想
if(0)表示的意思是,执行else或不执行;if(非零)表示执行下面的语句。
以后不会不要立马问别人,多百度,多翻书,一般都有结果。
判断一个数是否是素数
int num(int b)
{
int i,s;
s=0;
for(i=3;i<b;i++)
{
if(b%i==0)
{
s++;
//printf("%d %d %d\n",b,i,s);
}
}
if(s==0)
{
return 1;
}
else
return 0;
}
最大公约数·穷举
#include<stdio.h>
int main(void)
{
int a,b,temp;
scanf("%d%d",&a,&b);
if(a<b)
{
temp=a;
a=b;
b=temp;
}
for(temp=b;a%temp || b%temp;temp--)
;
printf("%d ",temp);
return 0;
}
以后可以试试暂停
#include<stdlib.h>
system("pause");
反映出一个问题,逻辑:且 全真才真;或 全假才假。
while的使用,仅涉及条件时,很方便。