#include"stdio.h"
void main(){
char a,b;
printf("input a string:\n");
b=getchar();
while((a=getchar())!='\n'){
if(a==b){
printf("same character\n");
break;
}b=a;
}
}
檢查輸入的一行中有無(wú)相鄰兩字符相同。
char a,b;
printf("input a string:\n");
b=getchar();
while((a=getchar())!='\n'){
if(a==b){
printf("same character\n");
break;
}b=a;
}
本例程序中,把第一個(gè)讀入的字符送入b.然后進(jìn)入循環(huán),把下一字符讀入a,比較a,b是否相等,若相等則輸出提示串并中止循環(huán),若不相等則把a(bǔ)中的字符賦予b,輸入下一次循環(huán)。
輸出100以內(nèi)的素?cái)?shù)。素?cái)?shù)是只能被1 和本身整除的數(shù)?捎酶F舉法來(lái)判斷一個(gè)數(shù)是否是素?cái)?shù)。
void main(){
int n,i;
for(n=2;n<=100;n++){
for(i=2;i if(n%i==0) break; if(i>=n) printf("\t%d",n); } } int n,i; for(n=2;n<=100;n++){ for(i=2;i if(n%i==0) break; if(i>=n) printf("\t%d",n); } 本例程序中,第一層循環(huán)表示對(duì)1~100這100個(gè)數(shù)逐個(gè)判斷是否是素?cái)?shù),共循環(huán)100次,在第二層循環(huán)中則對(duì)數(shù)n用2~n-1逐個(gè)去除,若某次除盡則跳出該層循環(huán),說(shuō)明不是素?cái)?shù)。 如果在所有的數(shù)都是未除盡的情況下結(jié)束循環(huán),則為素?cái)?shù),此時(shí)有i>=n,故可經(jīng)此判斷后輸出素?cái)?shù)。然后轉(zhuǎn)入下一次大循環(huán)。實(shí)際上,2以上的所有偶數(shù)均不是素?cái)?shù),因此可以使循環(huán)變量的步長(zhǎng)值改為2,即每次增加2,此外只需對(duì)數(shù)n用2~n去除就可判斷該數(shù)是否素?cái)?shù)。這樣將大大減少循環(huán)次數(shù),減少程序運(yùn)行時(shí)間。 #include"math.h" void main(){ int n,i,k; for(n=2;n<=100;n+=2){ k=sqrt(n); for(i=2;i if(n%i==0) break; if(i>=k) printf("\t%2d",n); } } 相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |