6-22 删除字符串中指定的字符 分数 10 作者 王跃萍 单位 东北石油大学 编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。 函数接口定义: int fun(char s[],char c); 其中 s 和 c 都是用户传入的参数。 函数从字符串 s中删除指定的字符c 。同一字母的大、小写按不同字符处理。 裁判测试程序样例: #include <stdio.h> int fun(char s[],char c); int main() { static char str[]="turbocandborlandc++"; char ch; scanf("%c",&ch); printf("原始字符串:%s\n", str); fun(str,ch); printf("str[]=%s\n",str); return 0; } /* 请在这里填写答案 */ 输入样例: c 输出样例: 原始字符串:turbocandborlandc++ str[]=turboandborland


```c #include <stdio.h> int fun(char s[], char c) { int i, j; for (i = 0, j = 0; s[i]!= '\0'; i++) { // 遍历字符串 if (s[i]!= c && s[i]!= c + 32 && s[i]!= c - 32) { // 检查是否为指定字符(包括大小写) s[j++] = s[i]; // 不是则复制到新位置 } } s[j] = '\0'; // 结束新字符串 return 0; } ``` 额外需要注意的逻辑点: 1. 对于字符的大小写转换,要确保处理的逻辑准确无误。 2. 注意字符串结束标志'\0'的处理,以保证新字符串的完整性。 3. 在处理字符串时,要考虑边界情况,如空字符串等。 [2025-01-21 21:18:10 | AI写代码神器 | 211点数解答]
相关提问
- 6-22 删除字符串中指定的字符 分数 10 作者 王跃萍 单位 东北石油大学 编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。 函数接口定义: int fun(char s[],char c); 其中 s 和 c 都是用户传入的参数。 函数从字符串 s中删除指定的字符c 。同一字母的大、小写按不同字符处理。 裁判测试程序样例: #include <stdio.h> int fun(char s[],char c); int main() { static char str[]="turbocandborlandc++"; char ch; scanf("%c",&ch); printf("原始字符串:%s\n", str); fun(str,ch); printf("str[]=%s\n",str); return 0; } /* 请在这里填写答案 */ 输入样例: c 输出样例: 原始字符串:turbocandborlandc++ str[]=turboandborland(211点数解答 | 2025-01-21 21:18:10)170
- #include<stdio.h> void get_char(); int position(char ch); int main() { get_char(); return 0; } void get_char() { char ch; printf("请输入字符:"); while((ch=getchar())!=EOF) { if((ch=getchar())=='\n') { continue; } if((ch=getchar())!=-1) { printf("%c在字母表中的位置是%d\n",ch,position(ch)); } else printf("%c不是字母表中的",ch); } } int position(char ch) { if(ch>='A'&&ch<='Z') return ch-'A'+1; if(ch>='a'&&ch<='z') return ch-'a'+1; else return -1; } 查错 (519点数解答 | 2025-02-07 12:41:36)125
- 检查代码 #include <ctype.h> #include <string.h> void verse(char* str) { *str = tolower(*str); int lens = strlen(str); printf("字符串长度为:%d\n", lens); for (int i = 0; i < lens / 2; i++) { char temp = str[i]; str[i] = str[lens - 1 - i]; str[lens - 1 - i] = temp; } } int pali(char *str) { int lens=strlen(str); char *reverse[lens+1]; strcpy(reverse, str); verse(reverse); return strcmp(str, reverse)==0; } int main() { char str[101];(655点数解答 | 2024-11-08 21:54:45)166
- #include<stdio.h> int main() { int max,a,b,c; int fun (intx,inty); printf("\nplease input 3 numbers:"); scanf("%d%d%d",&a,&b,&c); max=fun(fun(a,b),c); printf("max=%d",max); return 0; } int fun(intx,inty) { return(x>y?x:y); }(234点数解答 | 2025-05-23 16:06:57)89
- void sr(struct student* sr) //输入函数 显示器输入(录入学生信息) { int i = 0; printf("请输入学生的个数:"); scanf("%d", &d); system("cls");//清屏 for (; i < d; i++) { printf("请输入学生的姓名:"); scanf("%s", (*(sr + i)).name); printf("请输入学生的学号:"); scanf("%d", &(*(sr + i)).num); printf("请输入学生的语文成绩:"); scanf("%f", &(*(sr + i)).chinese); printf("请输入学生的数学成绩:"); scanf("%f", &(*(sr + i)).math); printf("请输入学生的英语成绩:"); scanf("%f", &(*(sr + i)).english); printf("请输入学生的计算机成绩:"); scanf("%f", &(*(sr + i)).c(5点数解答 | 2024-07-02 08:40:40)210
- 快速排序:# include< iostream>using namespace std;# include< stdlib. h># include< time. h>const int n =10;const int min= 10;const int max=99;int getrand( int min, int max){return ( rand()%( max-min+1)+ min);}void set( int r[], int n){int i;for(i=0;i<n;i++)r[i]=getrand(min, max);}void show( int r[], int n){int i;for(i=0;i<n;i++)cout << r[i]<<" ";cout << endl;}int partition( int r[], int i, int j){//由你完成}void quicksort( int r[], int i, int j){//由你完成}int main(){srand( time(0));int a[n];set(a, n);cout<<"(710点数解答 | 2024-11-14 10:44:25)206
- 快速排序:# include< iostream>using namespace std;# include< stdlib. h># include< time. h>const int n =10;const int min= 10;const int max=99;int getrand( int min, int max){return ( rand()%( max-min+1)+ min);}void set( int r[], int n){int i;for(i=0;i<n;i++)r[i]=getrand(min, max);}void show( int r[], int n){int i;for(i=0;i<n;i++)cout << r[i]<<" ";cout << endl;}int partition( int r[], int i, int j){//由你完成}void quicksort( int r[], int i, int j){//由你完成}int main(){srand( time(0));int a[n];set(a, n);cout<<"(951点数解答 | 2024-11-14 10:46:29)200
- 快速排序:# include< iostream>using namespace std;# include< stdlib. h># include< time. h>const int n =10;const int min= 10;const int max=99;int getrand( int min, int max){return ( rand()%( max-min+1)+ min);}void set( int r[], int n){int i;for(i=0;i<n;i++)r[i]=getrand(min, max);}void show( int r[], int n){int i;for(i=0;i<n;i++)cout << r[i]<<" ";cout << endl;}int partition( int r[], int i, int j){//由你完成}void quicksort( int r[], int i, int j){//由你完成}int main(){srand( time(0));int a[n];set(a, n);cout<<"(472点数解答 | 2024-11-14 10:51:44)180
- 采用c++语言,实现如下功能: 实现古典密码中的移位密码和仿射密码,具体实现如下接口: c++接口: <<<<<移位密码>>>>> bool is_valid_s(unsinged char k) { 判断k是否为合理的密钥 } int encrypt_s(unsigned char* p, unsigned char k) { 密钥合法则返回1,且密文覆盖明文: 密钥不合法则返回0. } int decrypt_s(unsigned char* c, unsigned char k) { 密钥合法则返回1,且明文覆盖密文: 密钥不合法则返回0. } <<<<<仿射密码>>>>> bool in_valid_a(unsinged char a, unsigned char b) { 判断a,b是否为合理的密钥 } int encrypt_a(unsigned char* p, unsigned char a, unsigned char b) { 密钥合法则返回1,且密文覆盖明文: 密钥不合法则返回0. } int decrypt_a(unsigned char* c, unsign(812点数解答 | 2024-12-18 16:02:36)229
- 6-7 删除字符串中数字字符 分数 10 作者 王跃萍 单位 东北石油大学 删除一个字符串中的所有数字字符。 函数接口定义: void delnum(char *s); 其中 s 是用户传入的参数。 函数的功能是删除指针 s 所指的字符串中的所有数字字符。 裁判测试程序样例: #include "stdio.h" void delnum(char *s); int main () { char item[80]; gets(item); delnum(item); printf("%s\n",item); return 0; } /* 请在这里填写答案 */ void delnum(char *s) { char *p=s; while(*p!='\0'){ if(*p>='0'&&*p<='9'){ p=p++; } } } 我的代码错在哪里(102点数解答 | 2024-11-20 18:52:27)272
- #include <stdio.h> void sort(char *p); int main(void) { char str[21] ; gets(str); sort(str); puts(str); return 0; } void sort(char *p) { int i,len=strlen(*p),ln=len-2,j; char *q; strncpy(q,*(p+1),len-2); for(i=0;i<len-3;i++) { for(j=0;j<ln-1;j++) { if(*(q+j)<*(q+j+1)) { int t=*(q+j); *(q+j)=*(q+j+1); *(q+j+1)=t; } ln--; } } strncpy(*(p+1),q,len-2); }(664点数解答 | 2024-12-06 09:27:31)179
- #include<iostream> using namespace std;#include<stdlib.h>#include<time.h> const int n =10; const int min =10; const int max =99; int getrand(int min, int max) { return (rand() % (max - min +1) + min); void set(int r[], int n){ int i; for(i = 0; i< n; i++) r[i] = getrand(min,max); void show(int r[], int n) { int i; for (i = 0; i<n;i++) cout << r[i] << ""; cout << endl;}void sift(int r[],int m,int k){ } void heapsort(intr[], int n){ //由你完成 int main(){ srand(time(0)); int a[n]; set(a,n); cout <<"原序(417点数解答 | 2024-11-28 11:20:23)253