当前位置:首页 » 编程语言 » c语言字符串程序

c语言字符串程序

发布时间: 2022-04-02 23:03:54

c语言编程,一个简单的字符串逐个字符输入程序

#include<stdio.h>
intmain(void)
{
inti;
charc,s[10];
for(i=0;i<9;i++)
{
s[i]=getchar();
}
s[i]='';
//
printf("%s",s);
return0;
}

Ⅱ c语言中怎样写删除字符串中某个字符的程序啊

c语言中书写删除字符串中某个字符的程序的具体操作步骤如下:

1、编写头函数,包括“#include <stdio.h>.”与“#include <string.h>.“。

Ⅲ C语言字符串有关的程序

定义这样一个结构体就能解决了。
struct student
{
char name[40];//姓名
char school[100];//学院
char class[40];//班级
char major[100];//专业

};

Ⅳ c语言怎么才能定义字符串来编写程序

您好: C语言本身是没有设置一种类型来定义字符串变量的,字符串的存储完全依赖于字符数组,但字符数组又不等于是字符串变量。在字符型一维数组存放字符串,并规定以字符'\0'作为字符串结束标志。'\0'占用存储空间,但又不记入串的实际长度。如一个字符串常量:"hello",该常量给出的地址值:char *p,s[10];如果s="hello"则是错误的,正确的应该为:p="hello";常用的定义字符串的方式有以下几种:一、定义一维字符数组变量以表示字符串1、用一般数组赋初值方式给一维字符数组初值比较: char str[10]={'a','b','c','\0\}; char str[]={'a','b','c','\0'}; //实际是str[4] char str[]={'a','b','c'};//实际是str[3],是字符数组不是字符串2、在赋初值时直接赋字符串常量 char str[10]={"string!"};或:char str[10]="string!";但 char str[7]="string!";可能破坏其他数据 二、利用指针char *pstr; 还是上面的那个char str[10]="string!";这里给pstr赋值应该为:pstr=str; 如果你想在堆区开辟空间来存放这个数组,那你就要用到malloc函数来获取空间。pstr=malloc(sizeof(char)*100);
满意请采纳

Ⅳ C语言 麻烦帮写个字符串转换的程序

#include<stdio.h>
#include<string.h>

#defineMAX_LEN100

voidstr_convert()
{
charstr[MAX_LEN+1];
scanf("%100s",str);
printf("string:%s length:%d",str,strlen(str));
}

intmain()
{
str_convert();
return0;
}

Ⅵ c语言编程字符串处理

#include<stdio.h>char str1[100],str2[100];char *mystrcat(char *s,char *ct) //字符串连接
{
while(*(s++));
s--;
while(*ct)
*(s++) = *(ct++);
return s;
}char *mystrcpy(char *s,char *ct)
{
while(*(s++)=*ct,*(ct++));
return s;
}int mystrcmp(char *s,char *ct)
{
while(*s && *ct)
{
if(*(s++) == *(ct++))
continue;
else
return *(s-1)-*(ct-1);
}
return 0;
}int mystrlen(char *s)
{
int length = 0;
while((length++,*s++));
return length-1;
}char *mystrsort(char *s)
{
int i,j,length = mystrlen(s);
char t;
for(i = 0;i < length;i++)
for(j = 0;j < length-i-1;j++)
{
if(s[j] > s[j+1])
{
t =s[j];
s[j] = s[j+1];
s[j+1] = t;
}
}
return s;
}int mystrfind(char *s,char ch)
{
int index = 0;
while(*s)
if(index++,*s == ch)
return index;
return -1;
}void menu()
{
int choose = 1;
char ch;
while(choose != 0)
{
printf("\n1.字符串连接\n2.拷贝\n3.比较\n4.求字符串长度\n5.对字符串内字符进行排序\n6.查找字符串中某个字符是否存在\n0.退出\n");
scanf("%d",&choose);
switch(choose)
{
case 1:printf("输入2字符串:\n");
scanf("%s%s",str1,str2);
mystrcat(str1,str2);
printf("连接后的字符串:%s\n",str1);
break;
case 2:printf("输入要拷贝的字符串:\n");
scanf("%s",str2);
mystrcpy(str1,str2);
printf("拷贝的字符串:%s\n",str1);
break;
case 3:printf("输入要比较的2字符串:\n");
scanf("%s%s",str1,str2);
printf("%d\n",mystrcmp(str1,str2));
break;
case 4:
printf("输入要求长度的字符串:\n");
scanf("%s",str1);
printf("长度为:%d\n",mystrlen(str1));
break;
case 5:
printf("输入要求排序的字符串:\n");
scanf("%s",str1);
mystrsort(str1);
printf("排序后:%s\n",str1);
break;
case 6:printf("输出字符串:\n");
scanf("%s",str1);
printf("输入要查找的字符:\n");
scanf("%c",&ch);
scanf("%c",&ch);
printf("ch所在位置为%d\n",mystrfind(str1,ch));
}
}
}int main()
{

menu();
return 0;
}

Ⅶ C语言字符串

若你的编译器支持中文字符输出,则你可把输出语句里的英文字符改用中文。
#include<stdio.h>
int main()
{
char s[80];
int i;
printf("input a string (upper-case latters only) please:\n");
loop: gets(s);
for (i=0;i<strlen(s);i++){
if (s[i]>='A' && s[i]<='Z') continue; //大写判断
else {
printf("re_input a string (upper-case latters only) please:\n");
goto loop; //转向语句
};
};
printf("output reversed:\n");
for (i=strlen(s)-1;i>=0;i--) printf("%c",s[i]);
return 0;
}

Ⅷ 如何用c语言来表达一个字符串

1)在串值后面加一个不计入长度的结束标记字符,比如'\0'来表示串值的终结

初始化一个字符串的方法如下,在最后添加'\0'

char str[] = {'I','a','m','h','a','p','p','y','\0'};
也可以直接使用字符串常量初始化字符数组(系统自动加上'\0'),这种方法符合人们的习惯。

char str[] = "I am happy";
或者
char str[] = {"I am happy"};
注意:不能使用下面的赋值方式:
char str[20];
str = "I am happy";
但可以用字符指针指向这个字符串:
char *str;
str = "I love China";

(2)将实际串长度值保存在数组0的下标下

#define MAXSIZE 20 //数组的长度
typdef char String[MAXSIZE+1];
初始化字符串的方法:

String t;
StrAssign(t,"I am happy");
int StrAssign(String T,char *chars)
{
T[0] = strlen(chars); //下标为0存放数组长度
for(i=1;i<=strlen(chars);i++) //下标位置从1开始存放数据
{
T[i] = *(chars+i-1);
}
return 1;
}
(3)使用结构体类型(自定义类型)

#define MAXSIZE 20
typedef struct{
char ch[MAXSIZE];
int len;
}String;
其中:MAXSIZE表示串的最大长度,ch是存储字符串的一维数组,len是字符串的长度
初始化函数示例:

String t;
StrAssign(&t,"I am happy");
int StrAssign(String *t,char *chars)
{
int i;
if(strlen(chars)>MAXSIZE+1) //字符串的长度大于数组的长度,操作失败,返回0
return 0;
for(i=0;i<strlen(chars);i++)
{
t->ch[i] = *(chars+i);
}
t->len = strlen(chars); //数组的长度
return 1; //返回1,操作成功
}
说明:这里的StrAssign函数的参数t使用的是指针,是因为结构体变量做做形参,用法和普通变量一样属于值传递方式,在子函数中要给t赋值,所以输入的是t的指针。与之对比的是(2)子函数中T是数组,传入的是数组的首地址(改变形参也就改变了实参)。

————————————————
版权声明:本文为CSDN博主“chenkaibsw”的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/chenkaibsw/article/details/78957944

Ⅸ C语言字符串与函数的程序题

={"abc","aabdfg","abbd","dcdbe","cd"};
你看好了,a = 97,b = 98, c = 99,d = 100, e = 101

比较时先从第一个开始,如 : “abc” 和 "aabdfg" 数组比较,第一个就是 "sbc"中的(a) 和"aabdfg"中的(a)比较,结果是相同的,进行下一个,就是"abc"中的第二个(b)和"aabdfg"中的第二个(a),结果 b = 98 大于 a = 97,它就认定"abc"串大于 "aabdfg"串,后面的几个字符将不比较,以此类推

热点内容
常用的r语言编译器 发布:2025-01-18 12:55:05 浏览:199
同人志解压密码 发布:2025-01-18 12:55:05 浏览:876
qq密码不记得怎么办 发布:2025-01-18 12:48:22 浏览:448
安卓系统停用怎么办 发布:2025-01-18 12:35:49 浏览:260
五菱宏光星辰哪个配置最值得买 发布:2025-01-18 12:29:43 浏览:595
鸿蒙系统为什么完美兼容安卓应用 发布:2025-01-18 12:16:02 浏览:856
数分转算法 发布:2025-01-18 12:08:31 浏览:612
iphone硬件为什么比安卓更好 发布:2025-01-18 12:08:29 浏览:822
医院冷热源配置有哪些 发布:2025-01-18 12:08:26 浏览:167
编译到仓库 发布:2025-01-18 12:04:40 浏览:650