c的旅程---字符

输出菱形实验:

/*****************
2017年四月十六。
第一个例子,输出菱形。就是找关系。
这是当n= 3时,
 *
***
 *
******************/

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int line;  // 菱形总行数
    int column;  // 菱形总列数
    int i;  // 当前行
    int j;  // 当前列

    printf("请输入菱形的行数(奇数):");
    scanf("%d", &line);
    if(line%2==0)
    {  // 判断是否是奇数
        printf("必须输入奇数!\n");
        exit(1);
    }
    column = line;  // 总行数和总列数相同

    for(i=1; i<=line; i++)
    {  // 遍历所有行
        if(i<(line+1)/2+1)
        {  // 上半部分(包括中间一行)
            for(j=1; j<=column; j++)
            {  // 遍历上半部分的所有列
                if( (column+1)/2-(i-1)<=j && j<=(column+1)/2+(i-1) )
                    {
                    printf("*");
                        }
                    else
                    {
                    printf(" ");
                       }
            }
        }
        else
        {  // 下半部分
            for(j=1; j<=column; j++)
            {  // 遍历下半部分的所有列
                if( (column+1)/2-(line-i)<=j && j<=(column+1)/2+(line-i) )
                    {
                    printf("*");
                    }
                    else
                    {
                    printf(" ");
                    }
            }
        }
        printf("\n");
    }

    return 0;

}
时间: 2024-10-03 04:05:43

c的旅程---字符的相关文章

【C++】C++自学旅程(4):数组与字符数组

数组方面基本与C相同.需要注意几个点如下: 一.多维数组 除了一维数组.二维数组,当然还可以实现多维数组(n维都可以),定义和使用方式类比二维数组.多维数组其实就是很多个一维数组的嵌套,数组里面有数组. 二.字符数组 字符数组就是数组元素为字符的数组,但其值得一提的是可以作为字符串使用.C++仍然没有字符串变量,实际上,string并不是C++语言本身具有的基本类型,它是在C++标准库中声明的一个字符串类,用这种类可以定义对象.每一个字符串变量都是string类的一个对象. 一个中文字占2B.

总结字符设备

今天来总结一下这几天字符设备驱动的学习吧. 首先要明白这几天的学习是围绕哪些角色展开的.我认为主角有这三个:驱动程序.字符设备文件.用户应用程序.而这些角色的出场顺序应该也是这样:应该先有 驱动程序,然后有字符设备文件,最后才有用户应用程序.驱动程序要做的事情有这么几个: 1.初始化好驱动,分到该分的东西:主设备号,cdev神马的,然 后再驻入内核. 2.实现一套函数来接应从应用程序传过来的系统调用函数,没有接口的话应用程序拿设备也没辙. 3.收尾工作,删除设备,释放设备号,不能一 直占着茅坑不

windows下cmd命令行显示UTF8字符设置(CHCP命令)

在中文windows系统中,如果一个文本文件是utf-8编码的,那么在cmd.exe命令行窗口(所谓的dos窗口)中不能正确显示文件中的内容.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符集. 如果想正确显示UTF-8字符,可以按照以下步骤操作: 1.打开CMD.exe命令行窗口 2.通过 chcp命令改变代码页,UTF-8的代码页为65001 1 chcp 65001 执行该操作后,代码页就被变成UTF-8了.但是,在窗口中仍旧不能正确显示UTF-8字符

sql server 导入平面文件源数据,错误 0xc02020a1错误 0xc020902a 错误 0xc02020c5,返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页...

使用sql server 导入平面文件源数据时,报错:错误 0xc02020a1: 错误 0xc020902a: 错误 0xc02020c5:错误 0xc0047022: 返回状态值 4 和状态文本"文本被截断,或者一个或多个字符在目标代码页中没有匹配项. 错误 0xc02020a1: 数据流任务 1: 数据转换失败.列"列 6"的数据转换返回状态值 4 和状态文本"文本被截断,或者一个或多个字符在目标代码页中没有匹配项.". (SQL Server 导入

vim选中字符复制/剪切/粘贴

问题描述: vim 中选中指定字符,进行复制/剪切/粘贴 问题解决: 进入vim中visual模式,visual模式进入,可以有三种方式: (1)在普通模式(normal)下,直接按键 v  就可以进入默认visual模式,可以使用v+j/k/h/l 进行文本选择 注: 使用normal模式下的  v命令,进入visual模式,v+ j/k/h/l   进行文本选中 对于选中的文本进行如下按键: (1.1)d   ------ 剪切操作 (1.2)y   -------复制操作 (1.3)p  

Linux 替换^M字符 方法

转自:http://blog.csdn.net/lhf_tiger/article/details/8203013 真恶心,10X流程产生的csv文件的行位居然有^M字符,害我一直在找报错原因,真是坑,还好最后我找出来了.一直在用Python,perl是越来越不熟练了.调试花了好久. 替换^M字符在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些"^M".有几种方法可以处理. 1.使用dos2unix命令.一般的分发版本中都带有这个小工具(如果没有

linux提取指定列字符并打印所有内容(awk)

假设有文件长如下样子: CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  samplename 1 3552841 . G . 32.995 . DP=1;MQ0F=0;AF1=0;AC1=0;DP4=1,0,0,0;MQ=40;FQ=-29.9912 GT:PL:DP 0/0:0:1 1 3552842 . T . 32.995 . DP=1;MQ0F=0;AF1=0;AC1=0;DP4=1,0,0,0

python字符编码

1. 字符编码简介 阶段一:现代计算机起源于美国,最早诞生也是基于英文考虑的ASCII ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit,8bit可以表示0-2**8-1种变化,即可以表示256个字符 ASCII最初只用了后七位,127个数字,已经完全能够代表键盘上所有的字符了(英文字符/键盘的所有其他字符) 后来为了将拉丁文也编码进了ASCII表,将最高位也占用了 阶段二:为了满足中文,中国人定制了GBK GBK:2Bytes代表一个字符 为了满

通过键盘接收数值和字符,实现计算器功能。

import java.util.Scanner; /** * @author 蓝色以太 * 通过键盘接收数值和字符,实现计算器功能. */ public class Calculator { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入第一个数值:"); double num1=sc.nextDouble(); System.out