C语言 实验十 函数(二)

1.写函数实现:输入一行字符,输出字符串中最长的单词。假定字符串中只含字母和空格,空格用来分隔不同单词。

#include<stdio.h>
int main()
{
	void choose(char s[100]);
	char str[100];
	printf("请输入一段字符:");
	gets(str);
	printf("\n\n");
	choose(str);
	return 0;
}

void choose(char s[100])
{
	char c;
	int i, j, num = 0, start = 0;
	for (i = 0, j = 0; i < 100; i++)
	{
		c = s[i];
		if ((c != ' ') && (c != '\0') && (c != '.') && (c != '!') && (c != '?'))
		{
			j++;
		}
		else
		{
			if (num < j)
			{
				num = j;
				start = i - j;
			}
			j = 0;
			if (c == '\0') break;
		}
	}
	printf("最长(%d个)单词为:", num);
	for (i = start; i < (start + num); i++)
	{
		printf("%c", s[i]);
	}
	printf("\n\n");
}

2.写函数实现:输入一个字符串判断是否是回文串(如”abcba”是回文串)。

#include <stdio.h>
char fun(char a[]);
main()
{
    char a[80];
    printf("Input a string:\n");
    gets(a);
    if (fun(a))
    {
        printf("This string is a plalindrome.\n");
    }
    else
    {
        printf("This string is not a plalindrome.\n");
    }
}
char  fun(char a[])
{
    int i, j;
    for (i = 0, j = strlen(a) - 1; i < j; i++, j--)//0指的是数组第一个所以减一才是最后一个
    {
        if (a[i] != a[j])
        {
            return 0;
        }
    }
}

3.利用递归函数调用方式,将所输入的9个字符,以相反顺序打印出来

#include <stdio.h>//此代码是若干字符
void reverse_output();
int main()
{
    printf("请输入若干个字符,以回车作为结束符\n");
    reverse_output();
    printf("\n以上为字符串的逆序输出\n");
    return 0;
}
//获取若干字符并逆序打印
 
void reverse_output()
{
    char character = getchar(); //0 -> N 顺序输入

    if (character != '\n') //如果不是回车,则递归调用
        reverse_output();
    else                   //检测到回车,递归结束
        return;

    printf("%c", character); //N -> 0 逆序输出
}
#include<stdio.h>//此代码是9个字符,中间不用打空格
void func(int n);
void main()
{
    printf("please input 9 numbers:\n");
    func(9);
}
void func(int n)
{
    if (n <= 1)
    {
        char next = getchar();
        putchar(next);
    }
    else
    {
        char next = getchar();
        func(n - 1);
        putchar(next);
    }
}

ps:此文章部分代码参考CSDN。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇