#include <stdio.h>
int
main(int argc, char *argv[])
{
char str[101]={0}
char *p=str
int digitCount=0
int letterCount=0
printf("please input a string: ")
gets(str)
printf("your input string is: %s\n",str)
while(*p!='\0')
{
if(*p>'0'&&*p<'9')
{
digitCount++
}
else if((*p>'a'&&*p<'z')||(*p>罩握'A'&&*p<'Z'))
{
letterCount++
}
p++
}
if(digitCount==0&&letterCount==0)
{
printf("you have nothing input.\n")
}
else if(digitCount>0&&letterCount>0)
{
printf("mixed\n")
}
else if(digitCount>0&&letterCount==0)
{
printf("digit\n"蔽链)
}
else if(digitCount==0&&letterCount>=0)
{
printf("物并庆letter\n")
}
else
{
//no way
}
getchar()
return 0
}
思路1:
判断一个整数m是否是素数,只需把m被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么m就是一个素数。代码如下:
#include <stdio.h>
int main(){
int a=0// 素数的个数
int num=0// 输入的整数
printf("输入一个整数:")
scanf("岁岩拿%d",&num)
for(int i=2i<numi++){
if(num%i==0){
a++// 素数个数加1
}
}
if(a==0){
printf("%d是素数。\n", num)
}else{
printf("%d不是素数。\n", num)
}
return 0
}
思路2:
另外判断方法还可以简化。m不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~ 之间的每一个整数乎搭去除就可以了。如果m不能被 2 ~ 间任一整数整除,m必定是素数。例如判别17是是否为素数,只需使17被2~4之间的每一个整数去除,由于都不能整除,可以判定17是素数。代码如下:
#include <stdio.h>
#include <math.h>
void main(){
int m// 输入的整数
int i// 循环次数
int k// m 的平方根 枣歼
printf("输入一个整数:")
scanf("%d",&m)
// 求平方根,注意sqrt()的参数为 double 类型,这里要强制转换m的类型
k=(int)sqrt( (double)m )
for(i=2i<=ki++)
if(m%i==0)
break
// 如果完成所有循环,那么m为素数
// 注意最后一次循环,会执行i++,此时 i=k+1,所以有i>k
if(i>k)
printf("%d是素数。\n",m)
else
printf("%d不是素数。\n",m)
return 0
}
#include<stdio.h>#include<ctype.h>
#include<string.h>
main()
{
char a[10]int i,flag=1,dian=0,l
gets(a)
l=strlen(a)
if(a[0]!='-'&&!isdigit(a[0]))flag=0
for(i=1i<li++)
{
if(!isdigit(a[i])&&a[i]!='.')flag=0
if(a[i]=='.')dian++
}
if(dian>1)flag=0
if(flag==1){printf("yes!")getch()}
else exit(1)
}
水平有限,编塌局了半个小时.没昌族有辛劳团迅让也有疲劳
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)