参考解法:
#include<stdio.h> #include<math.h> //宏定义布尔类型 #define BOOL int #define TRUE 1 #define FALSE 0 int main() { int n; printf("输入一个大于1的自然数:\n"); scanf("%d",&n); BOOL flag = TRUE; for(int i=2;i<n;i++) { if(n%i==0) { printf("不是质数\n"); flag = FALSE; break; } } if(flag||n==1||n==2) { printf("是质数\n"); } }
输出结果如下:
输入一个大于1的自然数: 5 是质数
参考方法:
#include <stdio.h> #include <string.h> #include <stdlib.h> char *deleteCh(char *ch,char *str){ char *p,*q,*r,*s; int len1,len,cnt=0,i; len1=strlen(str); p=str; //统计该字符在字符串中出现的次数 while((p=strchr(p,ch))!=NULL){ cnt++; p+=1; //指针移向该字符的后一个字符 } len=len1-cnt; //新字符串的长度 s=r=(char *)malloc(len); //分配动态存储空间 p=str; while(1){ q=strchr(p,ch); if(q!=NULL){ i=q-p; //出现位置距离开始位置距离 strncpy(r,p,i); r+=i; p=q+1; } else{ //表明剩余str中已经没有ch了 strcpy(r,p); break; } } return s; } int main(){ char ch='a'; char str[]="saejwajeaawaw"; char *d; d=deleteCh(ch,str); printf("result= %s\n",d); free(d); return 0; }
#include <stdio.h> #include <string.h> int main() { char zifu[1000]; const char del[1000]; char *rat; printf("请输入一串字符\n"); scanf("%s",&zifu); printf("请输入你想删除字符\n"); scanf("%s",&del); printf("已删除:%s\n",del); rat=strtok(zifu, del);/*strtok()用来将字符串分割成一个个片段, 当strtok()在参数s的字符串中发现参数del中包含的分割字符时, 则会将该字符改为\0 字符*/ printf("%s",rat); rat=strtok(NULL,del);/*原字符串变为分割完成之后的第一个字符串, 剩余的字符串存储在一个静态变量中*/ printf("%s\n",rat); return 0; }
#include<stdio.h> #include<string.h> #define N 80 void delete_x(char *str,char *s,char ch); int main(void) { char str[N],ch; char s[N]; memset(str,'\0',sizeof(str)); memset(s,'\0',sizeof(s)); gets(str); scanf(" %c",&ch); delete_x(str,s,ch); puts(s); return 0; } void delete_x(char *str,char *s,char ch) { int i,j = 0, str_len = strlen(str); for(i = 0; i < str_len; i++) { if(str[i] != ch) { s[j] = str[i]; j++; } } }
#include <stdio.h> #include <string.h> int main() { char s[128] = {0}, s1[128] = {0}, ch; int i = 0, j = 0; printf("请输入字符串:"); fgets(s, (sizeof s / sizeof s[0]), stdin); printf("请输入要删除的字符:"); scanf("%c", &ch); for (i = 0; i < strlen(s); i++) { if (s[i] == ch) continue; s1[j++] = s[i]; } puts(s); puts(s1); return 0; }
感谢您的支持,我会继续努力的!
支付宝扫一扫,即可进行扫码打赏哦
1780c-exercise-example33
参考解法:
输出结果如下:
1779c-exercise-example32
参考方法:
1778c-exercise-example32
参考方法:
1777c-exercise-example32
参考方法:
1776c-exercise-example32
参考方法: