當前位置:首頁 » 編程語言 » 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"串,後面的幾個字元將不比較,以此類推

熱點內容
蒙皮演算法 發布:2025-01-18 12:57:53 瀏覽:549
常用的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