C程序课程设计

来源:百度知道 编辑:UC知道 时间:2024/05/21 06:32:13
#include <stdio.h>
#include <conio.h>

int fun(char s[],int c)
{ int i,k=0;
for(i=0;s[i];i++)
if(s[i]!=c)
s[k++]=s[i];
s[k]='\0';
}
1. 数据删除:删除字符串中的数字字符。主函数中输入字符串,调用函数,并输出结果字符串。例如若输入的字符串是:34AB9C6DE, 则应输出:ABCDE
主函数应该怎么写 那位给我这菜鸟帮帮忙
我这个前面是不是也有问题啊
fun循环对吗
判断数字应该用ASC码吧
谁能给我说清楚一点

#include<stdio.h>
void main()
{void fun(char s[]);
char str[100];
printf("input string:\n");
gets(str);/*输入串*/
fun(str);/*删除数字*/
puts(str);/*输出删除后的串*/
}
void fun(char s[])/*无返回值用void,有一个形参,用不着两个*/
{int i,k;
k=0;
for(i=0;s[i];i++)
if(s[i]<'0'||s[i]>'9')/*不是数字时留下*/
s[k++]=s[i];
s[k]='\0';
}

int flag=0;
从头循环到尾;
{若当前字符符合“非数字”的条件
将此字符移动到flag的位置,flag++
};
flag及其后面的位置的字符=0;

判断不是数字应该用
if(!(s[i]>='0'&&s[i]<=9))

你的for语句有错,你没有给出循环结束的条件,由于不知道你fun函数中参数C的作用,其他的我也不必多说!
下面是我写的一个函数(根据你想要实现的功能写的):

#include <stdio.h>
#include <conio.h>
void fun(char s[])
{
int i,k=0;
for(i=0;s[i]!='\0';i++)
{
if((s[i]>='a'&&s[i]<'z')||(s[i]>='A'&&s[i]<='Z'))
{printf("%c&q